Objectif
Si vous avez téléchargé l'image OTA et que, comme dans mon cas, vous vous êtes retrouvé sans succès, vous devriez pouvoir le faire adb sideload <filename>encore manuellement ( vidéo ici ).
Problème / erreur
... malheureusement, la mise à jour OTA via des adb sideloaderreurs avec:
Finding update package...
Opening update package...
Verifying update package...
Installing update...
Verifying current system...
"/system/app/Drive.apk" has unexpected contents.
E:Error in /tmp/update.zip
(Status 7)
Installation aborted.
où /system/app/Drive.apkpourrait être n'importe quelle application système.
Qui n'est pas à blâmer?
- TWRP n'est pas à blâmer, je le pensais au début, mais cela fonctionnerait également avec TWRP.
- TitaniumBackup Pro. Depuis que j'ai rooté mon appareil et que j'utilise une fonction utilisateur expérimenté, j'aurais dû connaître ses effets secondaires. Maintenant, je sais, cependant :) ... et il y a de fortes chances que vous en appreniez plus à partir de cette réponse maintenant.
Cause apparente de l'erreur
En utilisant Titanium Backup Pro, j'avais utilisé la fonction "gel" pour se débarrasser de certaines applications du système, à savoir:
- Clavier ASUS
- Calendrier
- Stockage du calendrier
- com.android.providers.partnerbookmarks
- com.android.sharedstoragebackup
- com.google.android.voicesearch
- Services d'échange
- Gmail
- Google One Time Init
- Google Play Livres
- Jeux Google Play
- Magazines Google Play
- Films Google Play
- Google Play Musique
- Recherche Google
- Moteur de synthèse vocale Google
- Hangouts
- iWnn IME
- Clavier iWnnIME (blanc)
- Init unique
C'est apparemment pourquoi le adb sideloadrenfloué tôt avec le message d'erreur donné dans ma question.
J'ai également désinstallé certaines des applications système, et je pense que je me souviens que "Drive" (rappelez-vous?:) Était l' /system/app/Drive.apkune d'entre elles.
La solution
J'ai trouvé la solution sur forum.xda-developers.com dans cette réponse . L'essentiel est que si vous avez une image modifiée, vous devez la restaurer pour que la charge latérale OTA réussisse.
Téléchargez d'abord l'image de stock pour la version que vous avez actuellement. Assurez-vous que c'est le bon pour votre appareil. J'essayais donc de passer de JSS15Rà KRT16Sla version Wi-Fi, ce qui signifiait que je devais télécharger l' 4.3 (JSS15R)image. C'était le dossier razor-jss15r-factory-ec2d4f76.tgzdans mon cas. J'ai ensuite déballé ce qui m'a donné un sous-dossier nommé razor-jss15r. À l'intérieur, il y avait des scripts shell, un .imgfichier et un .zip( image-razor-jss15r.zip). Ce dernier devait être déballé. Ensuite, j'avais les .imgfichiers dans le dossier dans lequel je les ai décompressés .zip:
boot.img
cache.img
recovery.img
system.img
userdata.img
Ensuite, j'ai suivi les étapes décrites dans la réponse liée:
- démarrer dans le chargeur de démarrage (garder Volume-downet Powerappuyer directement après l'avoir allumé)
- connectez l'USB (assurez-vous avant cela que tous les pilotes USB sont installés )
- changer dans le dossier avec les
.imgfichiers précédemment décompressés
- vérifiez à partir de l'invite du SDK Android que vous voyez l'appareil avec
fastboot devices.
- puis exécutez
fastboot flash system system.imgce qui fera clignoter une partition du système de stock
Remarque: contrairement à l'article lié, j'ai omis l'étape avec le fastboot erase systemcar cela est apparemment impliqué par fastboot flash system system.imgcomme on peut le voir sur la sortie. J'ai également laissé de côté fastboot flash boot boot.imget fastboot flash recovery recovery.imgparce que je pensais qu'il était peu probable que ces "partitions" aient été modifiées (j'avais raison). Vous aurez peut-être besoin des deux derniers, cependant. Cela dépendrait probablement de ce que vous avez modifié qui empêche l' adb sideloadétape (c'est-à-dire lire et comprendre le message d'erreur).
Voici la sortie:
# fastboot flash system system.img
erasing 'system'...
OKAY [ 1.160s]
sending 'system' (603447 KB)...
OKAY [ 19.786s]
writing 'system'...
OKAY [ 26.720s]
finished. total time: 47.668s
Et voila, un système propre qui peut être mis à jour OTA.
Donc, en bref, vous n'aurez peut-être besoin que fastboot flash system system.imgde l'image stock que vous exécutez, si jamais vous obtenez une erreur pendant la phase de vérification:
Verifying current system...
"/system/<SOME>.apk" has unexpected contents.
E:Error in /tmp/update.zip
(Status 7)
Télécharger pour les images d'usine (Nexus 7, les deux)