Cyanogen / dev / uinput Schlüssel Injektion
-
27-09-2019 - |
Frage
Ich arbeite an einem Synergy Port mit dem Android (siehe synergy-foss.org).
Die einzige Möglichkeit, die ich gefunden habe Tastenanschläge zu injizieren ist die CyanogenMod und Schreiben zu verwenden, Tastenanschläge auf / dev / uinput. Allerdings ist mein App nicht über Berechtigungen auf / dev / uinput zu schreiben. Der einzige Weg, um dies, dass ich gefunden habe, ist zu chmod 777 / dev / uinput.
Jedoch ... es scheint, nach einiger Zeit die Berechtigungen auf / dev / uinput zurückgesetzt werden - durch das, was? Ich weiß es nicht.
Gibt es einen besseren Weg, oder gibt es eine Möglichkeit, Ihre App als root in der Cyanogen Mod zu laufen?
Danke
Lösung 2
Hmm ich denke, es ist so einfach wie
Process p = Runtime.getRuntime().exec("su");
Andere Tipps
Lesen Sie IWindowManager . injectKeyEvent . Es ist in der layoutlib.jar in dem Plattform-SDK. Ich bin nicht sicher, welche Berechtigungen die Anwendung es nennen müssen (wie Wurzel oder nicht), aber es ist ein Anfang. Ich glaube nicht, dass Sie root benötigt, um die Methode auszuführen.
Ich spiele um mit ihm für eine Weile und war in der Lage Tastatureingaben von meiner Computer-Tastatur zu injizieren und das Gerät „repeat“ haben die Aktion.