0 votes

Modifier le contenu de l'APK

Savez-vous s'il est possible de modifier le code compilé dans le package apk ?

J'ai essayé les étapes suivantes :

  1. Décompresser le fichier xapk avec la commande : unzip my-app.xapk (j'ai plusieurs apk là-dedans et j'ai besoin de modifier l'un d'entre eux, pour corriger un bug...)
  2. Décompresser l'un des apk : apktool d my-component.apk
  3. Modifier l'un des fichiers smali
  4. Construire l'apk : apktool b ./my-component -o ./my-component.apk
  5. Générer un certificat : keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias
  6. Signer tous les fichiers extraits du xapk : find ./ -name "*.apk" -exec apksigner sign --ks my-release-key.jks --ks-pass pass:123456 --out {} {} \;
  7. Installer tous les composants : adb install-multiple -r my-component.apk another-component.apk....

Après toutes ces étapes, mon application fonctionne partiellement et j'ai des erreurs dans le logcat :

ArtManagerService: Impossible de préparer le profil pour mon-package:/data/app/~~SeVk-WOasdas3A-hIPw==/my-component-TwgvYqasd_uL4r2tgdBZ-og==/base.apk

0voto

Rohit Gupta Points 111

Un fichier .apk est un fichier zip, juste un peu plus strict. Théoriquement, vous pourriez changer n'importe quoi en lui. Mais si le code est réellement compilé, alors c'est un effort incroyable.

Il y a un article sur wikihow qui vous en dit plus sur la façon de modifier un fichier apk.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X