Получение сенсорных событий Android с помощью getevent на рутированном телефоне - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть рутованный смартфон Android 6. Теперь я хотел бы записать позиции касания и значения давления глобально в фоновом режиме. Единственный способ, которым я думаю, что это возможно, это использовать getevent (если есть другие возможности, я был бы рад услышать об этом). Используя приведенный ниже код, я могу получить события:

th = new Thread(new Runnable(){
        private Process exec;

        @Override
        public void run() {
            try {
                exec = Runtime.getRuntime().exec(new String[]{"su","-c","getevent -t " + device});
                InputStreamReader is = new InputStreamReader(
                        exec.getInputStream());
                String s;
                BufferedReader br = new BufferedReader(is);
                while(((s = br.readLine()) != null) && run){
                    ...
                }
                is.close();
                exec.destroy();
            } catch (IOException e) {
                e.printStackTrace();
            } 
}

Как теперь получить положение касания (x, y), давление и ширину кончика пальца для жестов мультитач? Кроме того, как я могу получить временную метку для каждого события, которая может быть связана с системным временем?

...