Je vais éditer le serveur Opera Mini v6.5 car il est bloqué dans notre pays.
Maintenant, j'ai décompressé le fichier .apk extrait des classes.Dex puis je l'ai converti via dex2jar.bat, maintenant modifié le serveur.
Mon problème est que je veux reconditionner le .jar ou .class à classes.Dex. Comment fait-on ça?
Voici une solution qui m'a été utile dans mon cas ...
Supposons que le fichier .jar se trouve dans "c:\temp\in.jar". Dans la fenêtre Invite de commande, cd pour ..\Android-sdk\platform-tools .
dx --dex --output="c:\temp\app.apk" "c:\temp\in.jar"
Pour obtenir le fichier .dex, exécutez:
dx --dex --output="c:\temp\dx.dex" "c:\temp\in.jar"
Pour mac, l'outil de commande dx est stocké dans un répertoire différent, comme indiqué dans la réponse du haut. Voici comment vous le faites dans mac:
exampleName$ /Users/exampleName/Library/Android/sdk/build-tools/25.0.2/dx --dex --output="/Users/exampleName/Downloads/classes-dex2jar.jar" "/Users/exampleName/Downloads/name.dex"
Explication plus détaillée:
/Users/exampleName/Library/Android/sdk/build-tools/25.0.2/
.dx --dex--output="c:\temp\app.apk" "c:\temp\in.jar"
Si cela ne fonctionne toujours pas pour une raison quelconque, assurez-vous de respecter les exigences suivantes:
Je sais que c'est tard, mais je devais le résoudre moi-même après des heures d'essais et d'erreurs. J'espère que cela aidera un autre utilisateur de Mac.
On dirait que vous avez besoin de apktool , il vous permet de remballer et de démissionner un apk, sans avoir à vous lancer dans l'exécution de dx et à vous en approprier.
Voici un article sur la façon de décompresser et de remballer
Pour éviter de télécharger l'intégralité d'Android Studio: Vous pouvez aller à command-tools download et extraire le dossier. Puis allez dedans et trouvez votre outil sdkmanager
. Ensuite, sur votre ligne de commande, tapez sdkmanager "build-tools;28.0.1"
. Vous pouvez sélectionner la version de build-tools appropriée en fonction de la version de Java avec laquelle vous travaillez. Cela le téléchargera dans le répertoire racine de vos outils de ligne de commande. Allez dans ce dossier et vous devriez voir l'outil dx
. Ensuite, vous pouvez taper dx --dex --output="nameoffile.dex" nameoffile.jar
.
Remarque supplémentaire: si vous essayez de convertir un grand pot, vous risquez une erreur OUT OF MEMORY
. Dans ce cas, il vous suffit de transmettre à la machine virtuelle Java l’option d’augmentation du tas dx -JXmx256m ...
.
Pour déxifier un fichier jar, vous utiliseriez dx.bat dans le dossier platform-tools de votre sdk. Vous pouvez également consulter la tâche -dex dans le fichier build.xml du dossier tools\ant de votre SDK.