Как сделать Java настольное приложение, которое никогда не переводит систему в спящий режим и работает в фоновом режиме? - PullRequest
1 голос
/ 27 мая 2020

Я новичок в программировании Java, знаю базовый c синтаксис Java и могу писать программы. Я хочу сделать настольное приложение в java, которое никогда не позволяет системе спать. Я хочу, чтобы это приложение работало в фоновом режиме и не мешало работе пользователя.

Я понял, что некоторые клавиши клавиатуры можно нажимать внутри, что не влияет на поток, например F13 F14 не отображается пользователю, но может использоваться внутри.

Также я пришел с этой java программой, которая перемещает мышь в то же положение через несколько секунд, чтобы система не спала.

import java.awt.*;
import java.util.*;
public class Mal{

    public static void main(String[] args) throws Exception{
        Robot mal = new Robot();
        while(true){
            mal.delay(1000 * 60); 
            mal.mouseMove(mouseLoc.x, mouseLoc.y);
        }
    }
}

Мне любопытно узнать, как сделать настольное приложение для windows с использованием Java. Например, когда пользователь нажимает на приложение, оно активируется и продолжает работать в фоновом режиме до тех пор, пока пользователь не приблизится к нему, и он никогда не должен позволять P C спать ни моей движущейся мышью, ни щелчком специальных клавиш.

Полезные ссылки , требуется код и путь для разработки.

Спасибо!

1 Ответ

1 голос
/ 27 мая 2020

Вы можете попробовать использовать java .awt.Robot: https://docs.oracle.com/javase/7/docs/api/java/awt/Robot.html

Как указано в документации, это не будет работать во всех средах, поскольку позволяет программам пользовательского пространства эмуляция пользовательского ввода - это небольшая проблема безопасности.

...