Installer la mise à jour officielle Jelly Bean de Samsung sur un Galaxy S3 rooté

Depuis quelques mois Samsung diffuse de pays en pays la mise à jour vers Jelly Bean de son téléphone Galaxy S3, initialement sous le nom d’Ice Cream Sandwich.

Si vous avez ajouté le mode recovery de ClockWorkMod pour avoir accès aux permissions super-utilisateur, la mise à jour officielle vers Jelly Bean risque de ne pas fonctionner.

La mise à jour peut vous être proposée spontanément, ou vous pouvez lancer manuellement la Mise à jour logicielle dans le menu À propos de l’appareil.

Une fois le téléchargement terminé l’appareil redémarre en mode recovery mais l’installation échoue avec le message :

assert failed: getprop(« ro.product.device ») == « m0 » || getprop(« ro.bulid.product ») == « m0 »

Une petite astuce permet d’installer tout de même la mise à jour sans devoir retirer ClockWorkMod recovery ni le mode super-utilisateur.

Sauver la mise à jour

Quand la mise à jour officielle est téléchargée, ne redémarrez pas immédiatement. Il faut préalablement modifier cette mise à jour pour pouvoir l’activer sur votre téléphone. Dans un premier temps, il faut la déplacer pour la rendre accessible sur votre ordinateur. Ouvrez l’application Terminal Emulator, et dans celui-ci, tapez su et confirmer le passage en mode super-utilisateur.

Tapez la commande cat /cache/fota/update.zip > /sdcard/update.zip

Récupérez ce fichier sur votre ordinateur (en le connectant avec le câble, en l’envoyant sur un serveur FTP ou webdav, en vous l’envoyant par email, vous avez le choix).

Modifier le script d’installation de la mise à jour

Sur votre ordinateur, éditez le fichier update.zip. J’utilise vim pour cela, il permet de modifier directement le fichier zip, mais si vous n’êtes pas coutumier de ce programme, je vous conseille d’en choisir un moins difficile d’accès, peut-être même que votre environnement fera tout le travail pour vous et vous proposera d’ouvrir le fichier avec la commande adéquate.

Le fichier à modifier est /META-INF/com/google/android/updater-script

Les premières lignes ressemblent à :

mount("ext4", "EMMC", "/dev/block/mmcblk0p9", "/system");
assert(file_getprop("/system/build.prop", "ro.build.fingerprint") == "samsung/m0xx/m0:4.0.4/IMM76D/I9300XXBLH3:user/release-keys" ||
	       file_getprop("/system/build.prop", "ro.build.fingerprint") == "samsung/m0xx/m0:4.1.1/JRO03C/I9300XXDLJ2:user/release-keys");
assert(getprop("ro.product.device") == "m0" ||
	       getprop("ro.build.product") == "m0");
ui_print("Verifying current system...");

Effacez la ligne suivante :

assert(getprop("ro.product.device") == "m0" ||
	       getprop("ro.build.product") == "m0");

Et enregistrez le fichier.

Activer la nouvelle version de la mise à jour

Recopiez le nouveau fichier update.zip dans le répertoire /sdcard de votre téléphone et lancez le redémarrage en mode recovery. Pour cela, éteignez au préalable votre téléphone, comptez jusqu’à dix, puis appuyez simultanément sur les touches Volume Up, Home et Power. Vous devez voir apparaître le système recovery de ClockWorkMod. Dans celui-ci, installez la mise à jour /sdcard/update.zip. Insistez s’il vous alerte sur une signature incorrecte (votre modification a changé la somme de contrôle de la mise-à-jour).

Une fois la mise à jour activée, redémarrez et laissez à votre téléphone le temps de reprendre ses esprits (ne vous inquiétez pas cela prend deux à trois minutes).

Vérifiez dans le menu À propos de l’appareil des paramètres que votre S3 est désormais sous la version 4.1 et quelques d’android…

Et voilà !

Laisser un commentaire

%d blogueurs aiment cette page :