Ошибка в службе Android Studio - ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: Thread-5 - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть служба, которая контролирует экран смартфона, при включении экрана посылаю команду нажать кнопку VOLUME_UP
Может ли кто-нибудь мне помочь?

public class receiverScreen extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
            Log.e("SERVICE1", "SCREEN ON ..");

            Thread myThread;
            myThread = new Thread (new Runnable(){
                public void run() {
                    // TODO Auto-generated method stub
                    try {
                        Thread.sleep(4000);
                        Instrumentation inst = new Instrumentation();
                        inst.sendKeyDownUpSync(KeyEvent.KEYCODE_VOLUME_UP);
                        Log.e("SERVICE1", "VOLUME UP");

                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            });
            myThread.start();
        } else {
            Log.e("SERVICE1", "SCREEN OFF...");
        }
    }
}

ОШИБКА ЖУРНАЛА

E/AndroidRuntime: FATAL EXCEPTION: Thread-5
    Process: estadotela.example.com.estadotela, PID: 15593
    java.lang.SecurityException: Injecting to another application requires INJECT_EVENTS permission
        at android.os.Parcel.readException(Parcel.java:1684)
        at android.os.Parcel.readException(Parcel.java:1637)
        at android.hardware.input.IInputManager$Stub$Proxy.injectInputEvent(IInputManager.java:537)
        at android.hardware.input.InputManager.injectInputEvent(InputManager.java:865)
        at android.app.Instrumentation.sendKeySync(Instrumentation.java:911)
        at android.app.Instrumentation.sendKeyDownUpSync(Instrumentation.java:921)
        at estadotela.example.com.estadotela.receiverScreen$1.run(receiverScreen.java:29)
        at java.lang.Thread.run(Thread.java:761)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...