Les utilisateurs peuvent-ils reconvertir le fichier apk de mon application en code réel? S'ils le font, y a-t-il un moyen d'empêcher cela?
Les utilisateurs peuvent-ils reconvertir le fichier apk de mon application en code réel? S'ils le font, y a-t-il un moyen d'empêcher cela?
Réponses:
Tout d'abord, un fichier apk n'est qu'un fichier jar modifié. La vraie question est donc de savoir s'ils peuvent décompiler les fichiers dex à l'intérieur. La réponse est en quelque sorte. Il existe déjà des désassembleurs, tels que dedexer et smali . Vous pouvez vous attendre à ce que ceux-ci s'améliorent, et théoriquement, il devrait éventuellement être possible de décompiler vers la source Java réelle (au moins parfois). Reportez-vous à la question précédente sur la décompilation de DEX en code source Java .
Ce dont vous devez vous souvenir, c'est que l'obfuscation ne fonctionne jamais. Choisissez une bonne licence et faites de votre mieux pour la faire respecter par la loi. Ne perdez pas de temps avec des mesures techniques peu fiables.
ApkTool pour afficher les ressources dans le fichier APK
apktool.bat d sampleApp.apk
Utilisation de dex2jar
dex2jar sampleApp.apk
Décompiler .jar à l'aide de JD-GUI
J'ajouterai aussi que de nos jours, il est possible de décompiler l'application Android en ligne, aucun logiciel n'est nécessaire!
Voici 2 options pour vous:
Téléchargez cet outil jadx https://sourceforge.net/projects/jadx/files/
Décompressez-le et que dans le dossier lib, exécutez le fichier jadx-gui-0.6.1.jar maintenant parcourez votre fichier apk. C'est fait. Apk se décompilera automatiquement et l'enregistrera en appuyant sur le bouton Enregistrer. J'espère que cela fonctionnera pour vous. Merci
Parfois, vous obtenez du code cassé, lors de l'utilisation de dex2jar
/ apktool
, notamment dans les boucles. Pour éviter cela, utilisez jadx , qui décompile le bytecode dalvik en code source java, sans créer d'abord un fichier .jar
/ .class
comme le dex2jar
fait (apktool utilise dex2jar je pense). Il est également open-source et en développement actif. Il a même une interface graphique, pour les fanatiques de GUI. Essayez-le!
Les utilisateurs peuvent-ils reconvertir le fichier apk de mon application en code réel?
Oui.
Les gens peuvent utiliser divers outils pour:
FDex2
pour vider le dex
fichier
dex2jar
pour convertir enjar
jadx
pour convertir en java
code sourceS'ils le font, y a-t-il un moyen d'empêcher cela?
Oui. Plusieurs moyens (peuvent être combinés) pour éviter (dans une certaine mesure) cela:
ProGuard
Plus de détails peuvent se référer à mon tutoriel chinois :安卓 应用 的 安全 和 破解
Oui, il existe des tonnes de logiciels disponibles pour décompiler un fichier .apk.
Récemment, j'avais compilé une liste ultime des 47 meilleurs décompilateurs APK sur mon site Web. Je les ai disposés en 4 sections différentes.
J'espère que cette collection vous sera utile.