Domanda Simulare touch su android

Basax

Utente Bronze
9 Luglio 2018
3
2
0
29
Ciao volevo sapere, se era possibile simulare il touch attraverso un programma scritto preferibilmente in python.Perche sul computer è abbastanza facile,ma adesso ho bisogno di simularlo su android e sto quindi provando a scrivere direttamente sul telefono,tramite un ide python ma non riesco a trovare la libreria giusta.In pratica questo programma deve premere in determinati punti scelti da me e leggere dal blocco appunti.
Grazie
 
Senza root per quanto ne so l'unico modo per simulare touch e leggere da altre app è utilizzando il permesso di accessibilità. Nella documentazione android è previsto un metodo dispatchGesture. Per leggere da altre app in foreground puoi usare la classe AccessibilityNodeInfo e cercare il nodo testuale che ti interessa. Sicuramente è più facile farlo in java dato il supporto ufficiale dell'SDK.
 
Forse si può fare anche senza root, ma devi necessariamente collegare il tuo device al computer ed abilitare il debug USB. Con adb poi puoi simulare dei tocchi e degli scroll e in teoria li puoi pure scriptare.

Eg.
Scroll up
adb shell input swipe 300 300 500 1000

Tap:
adb shell input tap x y

Più in generale:
adb shell input swipe <start_x> <start_y> <end_x> <end_y> duration_ms>
 
Senza root per quanto ne so l'unico modo per simulare touch e leggere da altre app è utilizzando il permesso di accessibilità. Nella documentazione android è previsto un metodo dispatchGesture. Per leggere da altre app in foreground puoi usare la classe AccessibilityNodeInfo e cercare il nodo testuale che ti interessa. Sicuramente è più facile farlo in java dato il supporto ufficiale dell'SDK.
Grazie,ma se avessi i permessi di root,ci sarebbe qualche metodo più facile?
Messaggio unito automaticamente:

Forse si può fare anche senza root, ma devi necessariamente collegare il tuo device al computer ed abilitare il debug USB. Con adb poi puoi simulare dei tocchi e degli scroll e in teoria li puoi pure scriptare.

Eg.
Scroll up
adb shell input swipe 300 300 500 1000

Tap:
adb shell input tap x y

Più in generale:
adb shell input swipe <start_x> <start_y> <end_x> <end_y> duration_ms>
Grazie,invece con i permessi di root,posso fare qualcos'altro