Sep 02

De temps en temps, on trouve une superbe application sur le Market AndroidW mais on n’aime pas une traduction ou une image…

On peut alors écrire au développeur et espérer qu’il prenne en considération notre demande. En général, ça se passe plutôt bien (y)
De même, on trouve une application qui est en anglais et on la voudrait en français… Lorsque cela m’arrive, voila comment je procède :

  • Je récupère l’APK sur mon PC (ES File Explorer, MyPhoneExplorer, …)
  • Je la décompile
  • Je modifie les fichiers XML contenant les chaînes en anglais pour les remplacer par des chaînes en français
  • Je recompile l’application
  • Je désinstalle l’application d’origine
  • J’installe l’application recompilée
  • Je valide que les chaînes ne sont pas trop longues pour les composants qui les affichent
  • Lorsque cela me convient, j’envoie les fichiers XML au développeur pour qu’il intègre ma traduction dans une prochaine version…

Les rares fois où je l’ai fait, les développeurs étaient ravis d’obtenir une traduction clé en main (lol)

Mais pour décompiler et recompiler une application… comment fait-on ?

J’utilise un programme OpenSource qui est disponible depuis ce site, Apktool.
Comme prérequis à ce qui va suivre, je spécifie qu’un SDK Android doit être installé (et donc Java). Ce n’est peut-être pas obligatoire, mais comme c’est le cas dans mon installation, je vais, au cas où, dire que c’est nécessaire. |-(

Puisque le SDK d’Android est installé, nous devons avoir le fichier aapt.exe qui se trouve dans le sous-répertoire platform-tools de votre installation.

On télécharge les fichiers apktool* et apktool-install-windows* de cette page.

On extrait le contenu des archives dans le répertoire de son choix. Par exemple, R:\apktool\

On va ensuite modifier la variable système d’environnement Path. Pour cela, on peut passer par (sous Windows 7) :

  • Panneau de configuration\Tous les Panneaux de configuration\Système
  • Click droit sur Ordinateur, Propriétés

Puis on clique sur Paramètres système avancés.
On clique sur le bouton Variables d’environnement… de l’onglet Paramètres système avancés.

Propriétés Système

Propriétés Système


Dans la seconde liste, Variables système, on se positionne sur Path et on la modifie (bouton Modifier… ou double-clique).
Variables d'environnement

Variables d'environnement


A la fin des valeurs déjà présentes, on ajoute les deux répertoires nécessaires :

  • le chemin complet vers le sous-répertoire platform-tools
  • le chemin complet vers le répertoire où on a extrait les fichiers, dans mon exemple, R:\apktool\
Path

Path

L’environnement est prêt. Il ne reste plus qu’à s’en servir (lol)

Share

Pages : 1 2

Lien permanent vers Modifier des ressources dans un APK Rédigé par Whiler \\ Tags : ,

23 réponses pour “Modifier des ressources dans un APK”

Commentaires plus récents
 
  1. Billy a dit :

    Merci Whiler ;-)

    Répondre

  2. pillou a dit :

    Bonsoir,

    avec quoi comme logiciel vous Modifier le ficher .xml car j’ai 5 apk a traduire
    merci

    Répondre

  3. Whiler a dit :

    @ pillou : Salut,

    Avec un éditeur de texte, tel que le bloc-notes de Windows.

    Répondre

  4. pillou a dit :

    merci pour votre réponse chez moi rien ne va j’ai teste avec le bloc-notes de Windows
    et notepad++ rien a faire (:|

    Répondre

  5. Whiler a dit :

    @ pillou : Quels sont les symptômes ?

    Répondre

  6. pillou a dit :

    merci pour votre aide j’ai fait une Capture

    http://data.imagup.com/12/1140707565.PNG

    le texte incompréhensible

    Répondre

  7. Whiler a dit :

    @ pillou : le fichier ne semble pas avoir été décompilé… avez-vous procédé à cette étape :

    J’ouvre une Invite de commandes, je me place dans le répertoire où est mon APK et je la décompile avec la commande : apktool d wFlowHelper.apk

    expliquée en page 2 ?

    Répondre

  8. pillou a dit :

    oui j’ai suive votre explication étape par étape

    Répondre

  9. pillou a dit :

    oups il me prend pas la commande C:\apktool d wFlowHelper.apk

    il me dit apktool n’est pad reconnu en tant que commande interne…

    Répondre

  10. Whiler a dit :

    @ pillou : donc apktool n’est pas trouvé… si vous l’avez ajouté à votre path, essayez de rebooter et de recommencer…

    Répondre

  11. pillou a dit :

    sur mon patch j’ajoute C:\apktool et C:\Program Files (x86)\Android\android-sdk\platform-tools\aapt.exe

    c’est ça

    Répondre

  12. pillou a dit :

    re moi la il me dit input file was not found or was not reabable. :s

    Répondre

  13. Whiler a dit :

    @ pillou : C’est mieux.. apktool a été trouvé (y)

    Maintenant dans le répertoire courant (celui qui est affiché dans la fenêtre de commandes), il faut que le fichier APK à décompiler soit présent…
    Dans mon exemple, j’ai utilisé l’APK de l’application wFlowHelper : wFlowHelper.apk
    Il faut donc remplacer « wFlowHelper.apk » de cette ligne de commande par l’APK que vous souhaitez décompiler et qui se trouve dans le répertoire courant :

    1
    apktool d votreAPK.apk

    Répondre

  14. pillou a dit :

    bonsoir

    me revoilà il me crée pas le apk j’ai que le dossier

    http://img15.hostingpics.net/pics/430789Capture3.png

    Répondre

Commentaires plus récents
 

Laisser une réponse

(requis)

(requis)

*

;) (lol) (y) |-( (hi) 8-) (angel) :s (clap) (bow) (tmi) (:| plus »

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.