Les utilisateurs sont-ils en mesure de reconvertir le fichier apk de mon application en code réel?
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 ces améliorations ne soient que meilleures et théoriquement, il devrait éventuellement être possible de décompiler en source Java réelle (au moins parfois). Voir la question précédente décompiler DEX en code source Java .
Ce qu'il ne faut pas oublier, c'est que l'obscurcissement 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
Utiliser dex2jar
dex2jar sampleApp.apk
Décompilation .jar à l'aide de JD-GUI
J'ajoute que, de nos jours, il est possible de décompiler une 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 dans le dossier lib, exécutez le fichier jadx-gui-0.6.1.jar et naviguez maintenant dans votre fichier apk. Apk sera automatiquement décompilé et sauvegardé en appuyant sur le bouton Enregistrer . J'espère que cela fonctionnera pour vous . Merci
Les utilisateurs sont-ils en mesure de convertir le fichier apk de mon application en code réel?
oui.
Les gens peuvent utiliser divers outils pour:
FDex2
pour vider le fichier dex
dex2jar
pour convertir en jar
jadx
pour convertir en Java
code sourceS'ils le font - est-il possible d'empêcher cela?
oui. Plusieurs moyens (peuvent être combinés) pour prévenir (à un certain degré) ceci:
ProGuard
Plus de détails peuvent se référer à mon chinois tutoriel: 的 安全 和 破解
Parfois, vous obtenez un code cassé lorsque vous utilisez dex2jar
/apktool
, notamment dans les boucles. Pour éviter cela, utilisez jadx , qui décompile le bytecode de Dalvik en code source Java, sans créer de fichier .jar
/.class
comme le fait dex2jar
(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!