Forum Génération mobiles
Le Staff et tous les membres de Génération mobiles sont heureux de vous accueillir.

Toutefois, afin de pouvoir en profiter pleinement, il est fortement conseillé de vous inscrire ou de vous identifier

[TUTO] Comment traduire MIUI ?

Voir le sujet précédent Voir le sujet suivant Aller en bas

[TUTO] Comment traduire MIUI ?

Message par leon8121 le Sam 27 Avr 2013 - 13:15

Avec l'autorisation de l'auteur ci-dessous, je me permet de copier un post que je trouve intéressant si vous souhaitez vous lancer dans la traduction.


Kingzak34

source


Bonjour à tous ! Je mets à disposition de tous après beaucoup de demandes, un tuto pour traduire, hé oui, les ROMs ( Particulièrement, les ROMs non supportées officiellement ) de MIUI V4. Donc je me lance ! ( Pour windows ) Cette méthode est normalement adaptable avec toutes les ROMs, mais comme je n'ai pas d'expériences autre que MIUIV4, je ne pourrais faire de support pour les autres ROMs

Si quelqu'un voit une erreur ou des amélioration au niveau de la claretée ou des méthodes, je serais ravis de prendre toutes les suggestions ! Par MP de préférence

Je tiens à préciser que je prendrais aucune demande de support par MP, et que je ne vous répondrez pas si vous ne cherchez pas par vous même ou que vous n'avez pas lu tout le tuto au moins deux fois voir plus si besoin !

Et je tiens aussi à préciser que ce tuto est plutôt destiné aux utilisateurs ayant certaines connaissances dans le monde android, et même si d'autres veulent tenter l'aventure, veuillez chercher à plusieurs reprises, et vraiment chercher, des solutions avant de venir demander de l'aide, c'est comme cela qu'on apprend le mieux !

Sommaire :
1] Préparation du PC
2] Traduction
3] Finalisation


1] Préparation du PC :

Pour commencer, il vous faut un PC bien préparé, tout commence par l'installation et la mise en place de Apktool. Vous pourrez trouver apktool ici : http://forum.xda-developers.com/showthread.php?t=1755243 ( Merci à niark@MAN )
Dans la section Downloads, il vous faut la partie principale, qui est apktool, et les dépendances selon votre OS. ( Ici Windows )
Ensuite, vous mettez les fichiers qui sont donc, apktool.jar, apktool.bat, aapt.exe dans un dossier facile d'accès en commandes, comme dans C:\Apktool par exemple. ( C'est vous qui voyez mais c'est quand même plus simple ! )
Une fois ceci fait, je vous conseille de rentrer apktool dans les variables d'environnement, pour ne pas avoir à le chercher si vous voulez faire ce que vous voulez, où vous voulez. Pour cela ( Sous Windows 7 ) :

  • Allez dans Panneau de configuration
  • Cliquez sur Systeme
  • Cliquez à gauche sur Paramètres Systeme Avancés
  • Ensuite cliquez sur l'onglet Paramètres Systeme Avancés si ce n'est pas déjà le cas
  • Cliquez sur "Variables d'environnement"
  • Dans le cadre du bas, trouvez la variable "Path" et doublez cliquez dessus ( faites Modifier )
  • Allez à la fin de la ligne ( Attention de ne toucher à rien ! ) Saisissez l'addresse de votre dossier contenant apktool.bat, apktool.jar et aapt.exe en insérant avant l'addresse un " ; " ( Point virgule ) ( Par exemple: ;C:\apktool )
  • Ensuite faites Ok sur toutes les fenetres ouvertes, pour vérifier si l'action a bien été réalisée, ouvrer CMD ( Windows + R, et tappez cmd, dans la recherche de démarrer tapez cmd puis entrée, sinon chercher l'invite de commande dans Démarrer => Programmes => Accessoires )
  • Tapez apktool dans la fenêtre de commande. Puis entrée.
Si vous avez :
Code:
'apktool' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Alors, la manip n'a pas été bien faite, ou vous n'avez pas marqué apktool correctement.
Apktool est maintenant prêt.

Vérifier que Java est installé et à jour. La meilleure chose est encore de le réinstaller. Si vous installez java pour la première fois, vous allez peut etre rencontrer des soucis du type.
Code:
'java' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Si c'est le cas et que Java est bien installé correctement c'est qu'il n'a pas été rentré dans les variables d’environnement, donc il faut le faire nous même :

  • Allez dans Panneau de configuration
  • Cliquez sur Systeme
  • Cliquez à gauche sur Paramètres Systeme Avancés
  • Ensuite cliquez sur l'onglet Paramètres Systeme Avancés si ce n'est pas déjà le cas
  • Cliquez sur "Variables d'environnement"
  • Dans le cadre du bas, trouvez la variable "Path" et doublez cliquez dessus
  • Allez à la fin de la ligne ( Attention de ne toucher à rien ! ) Saisissez l’adresse de votre dossier contenant les binaires java ( java.exe ) en ajoutant un " ; " ( Point virgule ) avant cette adresse. L'adresse par défaut est : C:\Program Files (x86)\Java\jre7\bin ce qui donne : ;C:\Program Files (x86)\Java\jre6\bin
  • Ensuite faites Ok sur toutes les fenetres ouvertes, pour vérifier si l'action a bien été réalisée, ouvrer CMD ( Windows + R, et tappez cmd, dans la recherche de démarrer tapez cmd puis entrée, sinon chercher l'invite de commande dans Démarrer => Programmes => Accessoires )
  • Tapez java -version dans la fenêtre de commande.
Si vous avez
Code:
'java' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Alors, la manip n'a pas été bien faite, ou vous n'avez pas marqué la commande correctement. Si vous avez la version de Java c'est bon !
Si java et apktool sont correctement installés, on va pouvoir passer aux choses sérieuses !
Pour cela vous devez avoir installé les drivers de votre téléphone ou du moins, ceux qui conviennent et mettre en place ADB :

  • Commencez par télécharger ADB ( Trouvable dans le SDK android ) : https://www.dropbox.com/s/u7a8qazaoqxuzbv/ADB.zip
  • Téléchargez ensuite QtADB : http://qtadb.wordpress.com/download/ ( Il vous faut prendre "Windows version for new users(required libraries included)" et "binaries for windows" )
  • Extrayez l'archive de QtADB de préférence dans un endroit facile d'accès, comme C:\QtADB\ ( Toujours pareil c'est vous qui voyez )
  • Dans ce même dossiez extrayez l'archive windows_binaries et ADB.
Maintenant encore une fois, le mieux est d'intégrer ADB en variable d’environnement, donc encore une fois :

  • Allez dans Panneau de configuration
  • Cliquez sur Systeme
  • Cliquez à gauche sur Paramètres Systeme Avancés
  • Ensuite cliquez sur l'onglet Paramètres Systeme Avancés si ce n'est pas déjà le cas
  • Cliquez sur "Variables d'environnement"
  • Dans le cadre du bas, trouvez la variable "Path" et doublez cliquez dessus
  • Allez à la fin de la ligne ( Attention de ne toucher à rien ! ) Saisissez l’adresse du dossier de QtADB en ajoutant un " ; " ( Point virgule ) avant cette adresse. par exemple : C:\QtADB ce qui donne : ;C:\QtADB
  • Ensuite faites Ok sur toutes les fenetres ouvertes, pour vérifier si l'action a bien été réalisée, ouvrer CMD ( Windows + R, et tappez cmd, dans la recherche de démarrer tapez cmd puis entrée, sinon chercher l'invite de commande dans Démarrer => Programmes => Accessoires )
  • Tapez adb dans la fenêtre de commande.
Si vous avez :
Code:
'adb' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Alors, la manip n'a pas été bien faite, ou vous n'avez pas marqué adb correctement.
Maintenant il faut récupérer et installer les deux framework de la ROM
Pour cela deux solutions, ou vous n'avez pas le zip de la ROM à portée de main mais qu'elle est installée sur votre telephone :

  • Lancez QtADB
  • Il va vous demander de choisir un dossier, en fait si vous regardez le nom de la fenetre, il cherche ADB, donc donnez lui le dossier contenant ADB.
  • Ensuite vous arrivez sur la page avec marqué "Refresh"
  • Activez le Débogage USB sur votre téléphone ( Parametres => Option Develloppeur )
  • Branchez votre téléphone ( en USB )
  • Un gestionnaire de fichier en deux parties devrait apparraitre.
  • A gauche les dossiers du PC, à droite ceux du téléphone.
  • A droite, donc dans le téléphone allez dans /systeme/framework
  • Séléctionnez framework-res.apk et framework-mui-res.apk et copiez les à la racine de C:\ ( ou du disque local ) de préférence
  • Une fois les fichier copiés, fermez QtADB
Ou vous avez le zip de la ROM à portée de main :

  • Ouvrez le zip, allez dans system/framework
  • Extrayez framework-res.apk et framework-miui-res.apk à la racine de C:\ ou du disque local, de préférence.


Ouvrez une invite de commande et rendez vous dans le dossier contenant les apks
Tapez ensuite les commande suivantes :
Code:
apktool if framework-res.apk
Il doit retourner I: Framework installed to:C:\Users\"VotreSession"\apktool\framework\1.apk
Code:
apktool if framework-miui-res.apk
Il doit retourner I: Framework installed to C:\Users\"VotreSession"\apktool\framework\3.apk
Ou I: Framework installed to C:\Users\"VotreSession"\apktool\framework\6.apk
Toute la préparation pour la traduction est prête ! C'est long, mais c'était pas si terrible !

2] Traduction :

Maintenant que le PC est prêt pour la traduction on va passez aux choses sérieuses ( encore plus ! )

Pour commencer il faut récupérer toutes les apk systeme à traduire plus les deux frameworks extrait précédemment.

Si vous n'avez pas le zip de la ROM à portée de main mais qu'elle est installée sur votre telephone :
  • Ouvrez QtADB
  • Allez dans /system/app
  • Sélectionnez tous les apks sauf les apks Google qui n'ont pas besoin d'être traduits
  • Copiez les dans le dossier de apktool ou ou ca vous chante mais je prends cet exemple
  • Dans QtADB allez maintenant dans /system/framework et faites pareil avec framework-res.apk et framework-miui-res.apk ( Ou récupérez les de la racine du DD local )
  • Maintenant tous les apks sont dans un dossier
Si vous avez le zip de la ROM sous la main :

  • Allez dans /system/app
  • Sélectionnez tous les apks sauf les apks Google qui n'ont pas besoin d'être traduits
  • Copiez les dans le dossier de apktool ou ou ca vous chante mais je prends cet exemple
  • Dans QtADB allez maintenant dans /system/framework et faites pareil avec framework-res.apk et framework-miui-res.apk ( Ou récupérez les de la racine du DD local )
  • Maintenant tous les apks sont dans un dossier
Maintenant il vous faut décompiler tous ces apks pour pouvoir y inclure les traductions.

Pour trouver la traduction, je vous invite à chercher par vous même ! AUCUN SUPPORT A CE PROPOS

Vous avez donc vos traductions à implanter dans chaque application, encore faut-il décompiler celles-ci pour y ajouter les fichiers.

Pour décompiler un apk, la commande est la suivante :
Code:
 apktool d NomDeLApk.apk
Exemple :
Code:
apktool d DeskClock.apk
Une fois cela fait pour tous les apks ( Je vous invite à faire un script, ou à demander à quelqu'un de vous en faire un ! Ou encore apprenez le batch ) vous vous retrouvez avec les dossiers du même nom que les applis, ce sont les applis décompilées.

Ajoutez dans chaque appli dans /Nomdel'appli/res/ un dossier values-fr ( pour framework-res, le dossier doit se nommer values-fr-rFR ) et ajoutez vos XMLs traduits à l'intérieur.

Une fois cela fait il faut recompiler toutes ces apks !

La commande pour recompiler un apk est la suivante :
Code:
apktool b Nomdel'apk Chemindunouveauapk
Par exemple
Code:
apktool b Desckclock C:\compile\Desckclock.apk
(Le dossier de destination doit exister)

Vous avez maintenant recompilé vos apk !

3] Finalisation :

Il ne reste plus qu'a extraire et modifier le build.prop de votre rom et de zipper le tout !

Extrayez le build.prop de votre ROM par la méthode utilisée précédemment pour les apks, il se trouve dans /system
Ouvrez le ( notepad ++ conseillé ) et trouvez les lignes

Code:
ro.product.locale.language=XX
ro.product.locale.region=YY
Remplacez XX par fr
et YY par FR

Maintenant il faut zipper le tout dans un zip flashable via recovery !

Téléchargez un zip vierge ici ( Ou faites le votre vous même ! )
https://www.dropbox.com/s/wqnksu4powakm52/Updatevierge.zip

Et ajoutez vos fichiers au bon endroit ( Les framework dans le dossier system/framework, les apps dans le dossier system/app et le build.prop juste dans system )

Ensuite renommez votre zip sans mettre d'espace et enfin modifier le script ( updater-script ) contenu dans META-INF\com\google\android avec notepad ++ de préférence.

Votre pack est prêt ! Pensez à faire un Nandroid Backup avant de tester et essayez de résoudre les problemes vous même dans un premier temps en apprenant à lire un logcat et en vous servant de la fonction logcat de QtADB !

Foire Aux Questions ! :
-J'ai des erreurs du type ( Ce n'est qu'un exemple, cette erreur peut se retrouver sur tous les apks ) :
Code:
E:\ApkTool\apkm\projets\framework-res\res\values\strings.xml:130: error: Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?
E:\ApkTool\apkm\projets\framework-res\res\values\strings.xml:130: error: Unexpected end tag string

Comme l'indique l'erreur il faut ajouter formatted="false" après le nom de la ligne en question ( ici la 132 ) exemple :
Code:
<string name="numeric_date">%d/%m/%Y</string>
Devient
Code:
<string name="numeric_date" formatted="false">%d/%m/%Y</string>

-J'ai des erreurs concernant les apostrophes que dois-je faire ?

Dans les traductions les apostrophes ( ' ) doivent toujours être précédées d'un \ , c'est à dire par exemple :

L'appel devient => L\'appel


Dernière édition par leon8121 le Dim 28 Avr 2013 - 14:28, édité 7 fois
avatar
leon8121
Habitué

Habitué

ROMs : Miui V5
: : Xiaomi Mi2

Messages : 112

Revenir en haut Aller en bas

Re: [TUTO] Comment traduire MIUI ?

Message par Bamlot le Sam 27 Avr 2013 - 17:03

Merci pour le partage mais tu n'a pas tout copié le tuto ?
avatar
Bamlot
Prophète

Prophète

Appareil principal : S7 EDGE
ROMs : Officiel
: : ¯´·.¸¸..¸¸.·´¯

Messages : 6434

Revenir en haut Aller en bas

Re: [TUTO] Comment traduire MIUI ?

Message par leon8121 le Sam 27 Avr 2013 - 17:12

ça arrive... c'est en cours... il est long...
avatar
leon8121
Habitué

Habitué

ROMs : Miui V5
: : Xiaomi Mi2

Messages : 112

Revenir en haut Aller en bas

Re: [TUTO] Comment traduire MIUI ?

Message par leon8121 le Sam 27 Avr 2013 - 17:56

j'essayerais de le mettre un peu plus en forme plus tard.

Pour ma part, je n'ai pas encore essayer de traduire quoi que ce soit, donc je ne pourrais pas répondre à vos questions.
avatar
leon8121
Habitué

Habitué

ROMs : Miui V5
: : Xiaomi Mi2

Messages : 112

Revenir en haut Aller en bas

Re: [TUTO] Comment traduire MIUI ?

Message par Nvidia le Sam 27 Avr 2013 - 19:31

On est patient pas de soucis Wink
avatar
Nvidia
VIP++

VIP++

Appareil principal : HTC One M9
ROMs : ARHD 20.0
Appareil secondaire : HTC One M7
: : ARHD 93.0

Messages : 17916

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum