2017-03-12 1 views
0

Je développe un androïde APK qui va faire des événements tactiles automatique dans mon mobile lorsque certains bouton est cliqué, je suis la solution fournie par le lien:Android auto-signé MotionEvent APK

How to simulate touch from background service with sendevent or other way?

I ont le signapk.jar de here, et j'utilise la clé de test public et privé a également fourni, la commande je suis entré sont:

java -jar ./signapk.jar ./testkey.x509.pem ./testkey.pk8 ./app-debug.apk ./app-signed.apk 

et elle a conduit à une nouvelle signé APK à moi comme je m'y attendais:

app-signed.apk

et j'installer et exécuter l'APK en utilisant les commandes suivantes:

adb install app-signed.apk 
adb shell ps 

chaque fois que je clique sur le bouton, rien ne se passe, ce que je fais c'est faux?

NOTE

Et quand j'entre le paramètre:

android:sharedUserId="android.uid.system" 

dans mon AndroidManifest.xml, une erreur se produisant:

PANNE [INSTALL_FAILED_SHARED_USER_INCOMPATIBLE]

Je n'ai jamais fait ça avant, je n'ai jamais essayé de signer moi-même un APK avant, s'il vous plaît, guidez-moi sur ce que j'ai mal fait. Merci d'avance.

+0

Salut, je suggère que testkeys: » ./testkey.x509.pem. /testkey.pk8 "ne signe pas votre application en tant que système. – v1k

+0

Aussi "adb shell ps" ne prend pas part à l'installation de l'application, il montre seulement les processus en cours d'exécution sur le périphérique android. Je l'ai utilisé uniquement pour vérifier si le processus de mon application a fonctionné correctement. – v1k

+0

Je vois, en ce moment, j'ai généré mes propres fichiers clés, et cela fonctionne uniquement dans l'application, quand j'utilise le motionevent sur d'autres applications, il ne fonctionnera pas et écrasé, l'enracinement de l'appareil est la seule option? –

Répondre

1

Quelques choses:

Vérifiez que votre APK est signé correctement:

jarsigner -verify -verbose -certs app-signed.apk

Utilisez ensuite adb install -r app-signed.apk pour remplacer l'application existante. Pour plus d'informations sur la signature d'une application, consultez le guide this. Vous devez également utiliser le official Command Line Tools.

(je ne vois pas l'avantage à utiliser le projet github vous faisiez référence et il semble aussi être abandonnée.)

+0

merci pour votre effort –