Jump to content

[Tuto] Effectuer la MAJ 2.29.405.5 sans perdre ses données


bibi675

Recommended Posts

Hello tout le monde,

Comme promis sur mon message d'hier (ou plutôt de tout à l'heure ^_^ ), voici la méthode qui vous permet de passer de la version 2.29.405.2 à la 2.29.405.5 sans utiliser de RUU et donc sans perdre ses données.

Notez bien que même si cette procédure est sans dangers, je ne suis pas responsable de ce qui pourrait arriver à votre Desire si vous faîtes n'importe quoi.

Prérequis :

  • Un recovery qui vous permet de désactiver la vérification des signatures (j'expliquerai pour ClockworkMod mais je pense qu'il n'y aura pas de soucis avec Amon-RA).
    Pour installer ClockworkMod, il faut rooter le téléphone en exécutant Unrevoked3, il existe déjà un tutoriel pour ça, donc je ne m'étendrai pas là-dessus. (pas de pertes de données)
  • Une ROM officielle HTC en 2.29.405.2.
  • Un explorateur/éditeur de fichier comme ASTRO (Android Market >> ASTRO Gestionnaire de fichiers ou ASTRO File Manager, application gratuite).

Pourquoi cette MAJ ne s'installe pas ? (vous pouvez sauter cette partie si le côté technique ne vous intéresse pas)

Car HTC vérifie votre CID dans le script d'initialisation de la MAJ. Celui du Desire d'Orange par exemple est 'ORANG202', cet identifiant est installé en usine et permet d'indiquer que le téléphone est brandé (vendu par un opérateur) et possède ses propres mise à jour (6 mois après...). Mais dans le cas d'un Desire nu (avec ROM officielle HTC), le CID est réglé selon la forme suivante : 'HTC__999' afin de pouvoir installer les mises à jour HTC.

L'erreur vient donc du fait que lors de la vérification du CID (pourquoi cette vérification ? eh bien je ne sais pas...) par le package d'installation, le script, pensant qu'il s'agit d'un CID HTC car c'est une ROM HTC qui est installée, n'autorise que des CID HTC et bloque sur notre CID Orange.

Il y a donc deux solutions à ce problème : changer le CID (personne n'a réussi apparemment) ou modifier le script d'installation pour qu'il ne vérifie pas si il s'agit d'un CID HTC.

Au passage, la gold-card est complètement inutile lors des MAJ car la fonction de vérification du CID n'en tient pas compte, elle ne sert uniquement que pour le flashage avec un RUU.

Procédure :

  1. Tout d'abord, assurez-vous que la mise à jour s'est bien téléchargée et que le système affiche une icône dans la barre de status. Pour cela, sélectionnez "Installer ultérieurement" quand Android vous propose d'installer la MAJ.
  2. Ouvrez ASTRO et naviguez dans le répertoire 'download' (sans 's') de votre carte SD, un seul fichier devrait être présent :
    OTA_Bravo_Froyo_HTC_WWE_2.29.405.5-2.29.405.2_releasedauhl6jhok5cmdm6.zip
    Il s'agit de votre package d'installation qui devrait s'exécuter au re-démarrage si vous acceptez l'installation. Nous allons le modifier maintenant afin de virer la vérification du CID.
  3. Vous avez deux solutions maintenant :
    • La solution "feignasse" ( ^_^ ) qui consiste à remplacer le fichier par mon fichier modifié, que vous pouvez télécharger ici. Vous n'avez qu'à écraser le fichier présent sur la carte SD par le mien en connectant le téléphone en mode "Lecteur de disque" : écrasez le fichier puis débranchez simplement le câble. Si le système vous demande de re-télécharger la MAJ, déplacez le fichier à la racine de la carte SD, re-téléchargez la MAJ puis écrasez-là avec le fichier modifié sans connecter le Desire à l'ordinateur.
    • La solution manuelle, que je vais vous expliquer maintenant. Elle consiste à modifier vous-même le package d'installation.

[*]Si vous souhaitez modifier le fichier vous-même, ouvrez le package avec ASTRO puis naviguez jusqu'à META-INF/com/google/android. Copiez le fichier 'updater-script' puis collez-le dans le dossier 'download', vous devez donc avoir deux fichiers :

OTA_Bravo_Froyo_HTC_WWE_2.29.405.5-2.29.405.2_releasedauhl6jhok5cmdm6.zip

updater-script

[*]Ouvrez ce fichier avec l'Éditeur de fichiers d'Android puis placez-vous sur la ligne :

getprop("ro.cid") == "HTC__O32");

Modifiez-la en :

getprop("ro.cid") == "HTC__O32" || 1 == 1);

(Oui, j'ai remarqué comme vous que les caractères '||' n'étaient pas présents sur le clavier d'Android, heureusement qu'il y a les copiés/collés)

[*]Fermez l'éditeur en n'oubliant pas de sauvegarder.

[*]Dans ASTRO, copiez votre 'updater-script' modifié, supprimez le fichier META-INF/com/google/android/updater-script de votre package et enfin collez le fichier que vous venez de modifier. ASTRO va maintenant lancer la recompression, après-ça vous disposez d'un fichier de MAJ fixé mais dont les signatures sont modifiées.

Ne JAMAIS lancer la mise à jour à partir du recovery sans passer par la notification, risque de brick du téléphone (reboot en boucle) !

[*]Installez la mise à jour à partir de la notification, votre téléphone reboot.

[*]Lors de l'installation, un point d'exclamation orange s'affiche, appuyez sur Volume bas + Power pour lancer l'interface du ClockworkMod, ce dernier vous informe que la vérification des signatures est un échec.

[*]Désactivez cette vérification des signatures dans 'install zip from sdcard' >> 'toggle signatures verification' (sélectionnez avec une pression du pad optique).

[*]Installez enfin la MAJ en sélectionnant 'install from zip', vous devez naviguez jusqu'à votre package modifié situé dans le répertoire download. Le ClockworkMod vous demande si vous voulez vraiment installer ce ZIP, séléctionnez 'YES'. Votre téléphone installe le package : la mise à jour est un succès. :D

Foire aux Questions :

Comment copier un fichier avec ASTRO ?

Faîtes un appui long sur le fichier à copier >> menu 'Éditer' >> 'Copie'.

Comment coller un fichier avec ASTRO ?

Dans le menu du haut, sélectionnez 'Coller'.

Comment supprimer un fichier avec ASTRO ?

Faîtes un appui long sur le fichier à supprimer >> menu 'Éditer' >> 'Supprimer'.

Ce tutoriel peut-il s'appliquer aux ROMs customs ?

Généralement non, mais pour LeeDroid, ce tutoriel fonctionne avec la version 2.3c.

Et voilà, votre Desire est maintenant à jour, cette méthode pourra être utilisée pour toutes les prochaines MAJ récalcitrantes. ;)

N'hésitez pas à poster pour demander de l'aide ou si vous avez des commentaires.

bibi675

Edited by bibi675
Link to comment
Share on other sites

  • Replies 211
  • Created
  • Last Reply

Top Posters In This Topic

Merci vous deux ! :)

Pour MediaFire, c'est le seul hébergeur gratuit qui tienne la route mais si je n'étais pas en vacances, j'aurais uploadé le fichier sur mon FTP perso (1 Mo/s), je réglerai ça plus tard.

Au fait, est-ce que quelqu'un à réussi la MAJ grâce à ma méthode ?

EDIT : premier feedback, chez XDA :

http://forum.xda-developers.com/showpost.php?p=10217117&postcount=126

Edited by bibi675
Link to comment
Share on other sites

Bonjour,

Bravo, effectivement ça parait si simple et surtout l'explication qui permet de comprendre les choses(c'est si rare).

J'aurais tout de même une question.

La désactivation de la signature est nécessaire car ayant modifié le fichier, le zip n'a plus la même signature, exact?

Si oui, pourquoi un téléphone (bouygues) avec ROM HTC mais rooté fait échoué la mise à jour? le zip n'a pas été altéré et le CID doit être correct.

merci

Link to comment
Share on other sites

plus de 10x, installation foirée

je le tente en 'PB99IMG'

Hum, pas cool, t'as lancé la MAJ avec mon fichier ou tu l'as modifié toi-même ? La progress-bar de l'installation a-t-elle été jusqu'au bout ? As-tu un message d'erreur ?

Oui c'est ça, la vérification des signatures se fait à l'aide de hashs SHA1 si je ne me trompe pas et donc quand on modifie un seul fichier, les hash pré-calculés ne correspondent pas avec ceux qui sont générés lors de la MAJ. Il faut donc désactiver la vérification des signatures pour que l'installation puisse se faire.

Tu n'as peut-être pas le bon CID, peut-être que Bouygues impose un CID différent sur ses téléphones... Tu peux essayer de récupérer ton CID en connectant le Desire au PC et en lançant un shell adb :

adb shell

getprop ro.cid

Edited by bibi675
Link to comment
Share on other sites

bon, voilà mon petit feedback.

la modification du zip faite sans soucis

je lance l'installation en recovery, aucune erreur \o/

reboot .... joli logo HTC de l'installation

reboot ....

reboot ....

et plus de 10x :/

je récupère le fichier PB99IMG.zip 2.29.405.5 que je met à la racine de la µSD GoldCard,

j'y mets aussi l'update.zip, OTA 2.29.405.2, sait on jamais

reboot, lancement de PB99IMG.zip, il me propose de continuer ou d'annuler,

j'annule en pensant lancer l'update.zip 2.29.405.2,

refus signature.

bon ben je reboot et je laisserai le PB99IMG.zip 2.29.405.5 se lancer, et tant pis je reconfigure tout ...

Bah finalement, le téléphone reboot normalement, sans erreur en en version 2.29.405.5 sans perte de donnée ...

bizarre ...

Edited by plb67
Link to comment
Share on other sites

pour répondre à tes questions :

j'ai modifié le fichier moi même,

le fichier était déjà sur mon ordinateur depuis un moment

j'ai fait la modification 'à l'intérieur du zip' pour ne pas avoir à recompressé après

pas eu besoin de désactiver la vérification de la signature, c'est passé, étrange d'ailleurs !

progress bar jusqu'au bout, pas de messages d'erreur d'aucune sorte

c'est des les reboot que ça à bloqué,

peut être qu'enlever et remettre la batterie aurai fini l'installation simplement

plutôt que de tenter ce que j'ai mis dans le message précédent

merci beaucoup pour l'astuce ;)

Link to comment
Share on other sites

oups non pas deux installation, mais décompression et vérification dans le recovery

puis installation avec le joli logo HTC

le zip de l'OTA à la racine de la carte, rien d'autre sur cette µSD

et comme tu dis, ce qui compte c'est que l'update soit passé !

Link to comment
Share on other sites

Je viens de mettre à jour grâce à ton astuce: apparemment impeccable! Juste un message me disant après le reboot que le fichier de mise à jour était corrompu (après 4% d'installation, mais j'ai poursuivi) et les paramètres m'indiquent que le tel est bien updaté. Bon, il me donne la météo de Grenoble au lieu de Nice, mais je vais régler ça!

Un grand merci à toi, et un gros f**k à orange!

Link to comment
Share on other sites

Je me suis lancé et ça a fonctionné sur un Desire avec rom nue et rooté.

A savoir :

- lorsque j'ai eu le triangle, la combinaison des touches volume haut + power est restée sans effet. Il me semble que c'est l'appui sur la touche home ou la touche menu qui m'a basculé dans le menu du recovery.

- Après le second ou troisième reboot, j'ai eu le message suivant "Félicitation, votre téléphone a été mis à jour avec la version 2.29.405.5"

- Après ce message de félicitation, il y a eu une longue opération avec affichage d'un pourcentage d'avancement

- Une fois à 100%, j'ai bien cru que le téléphone avait été réinitialisé car le didacticiel du téléphone s'est affiché (celui qui vous apprend à utiliser le clavier). Heureusement, le téléphone n'a pas été réinitialisé.

Après avoir repris la main sur le téléphone, je constate que je suis bien en version 2.29.405.5 et qu'il n'y a plus de mise à jour disponible en faisant la vérification (je constate aussi que le zip est toujours présent dans le répertoire download).

Merci Bibi pour cette technique qui consiste à ignorer le CID (1==1 retourne toujours vrai :))

Reste à savoir pourquoi les téléphones avec une rom nue ont été obligés de faire cette opération ?? Le CID des desire avec une rom officielle aurait du être inclu dans ce script à priori ?!

Edited by kivala
Link to comment
Share on other sites

Erfff, apres avoir merdouille pas mal (et passage par siouper reflash (reboot en boucle)), sur une install propre, je me suis apercu que l'enregistrement de la modification dans updater-script ne s'enregistrait pas (on est loin du 1==1 ^^). J'ai enregistre la modification en passant par la carte monte sur l'ordinateur, avec gestionnaire d'archive et editeur de texte a partir de windows, et la, poooof, tout nickel :)

Donc, pensez a verifier que la modification soit bien presente...

Link to comment
Share on other sites

Un grand merci à toi, et un gros f**k à orange!

De rien mais le gros f**k n'est pas à mettre à Orange (pour une fois :P ) mais à HTC : depuis quand une MAJ a besoin de vérifier le CID si elle sait qu'elle est sur la bonne ROM ?

- lorsque j'ai eu le triangle, la combinaison des touches volume haut + power est restée sans effet. Il me semble que c'est l'appui sur la touche home ou la touche menu qui m'a basculé dans le menu du recovery.

Ah mais le bouton Volume haut + Power ne déclenche rien, c'est Volume bas + Power qui ouvre le recovery.

Merci Bibi pour cette technique qui consiste à ignorer le CID (1==1 retourne toujours vrai :))

Pas de quoi, et oui il faut mieux rajouter une petite condition que de tout virer, ça évite de faire des erreurs. :)

Reste à savoir pourquoi les téléphones avec une rom nue ont été obligés de faire cette opération ?? Le CID des desire avec une rom officielle aurait du être inclu dans ce script à priori ?!

Je continue de chercher mais apparemment, le CID n'est pas contenu dans la ROM mais ailleurs, peut-être dans une petite puce soudée quelque part ou dans un truc du genre...

Erfff, apres avoir merdouille pas mal (et passage par siouper reflash (reboot en boucle)), sur une install propre, je me suis apercu que l'enregistrement de la modification dans updater-script ne s'enregistrait pas (on est loin du 1==1 ^^). J'ai enregistre la modification en passant par la carte monte sur l'ordinateur, avec gestionnaire d'archive et editeur de texte a partir de windows, et la, poooof, tout nickel :)

Si on utilise ASTRO, il n'y a pas de problèmes normalement si on suit bien la procédure à la lettre, il ne faut pas modifier le fichier directement. ;)

Edited by bibi675
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...