Objetivo
Si tiene la imagen OTA descargada y, como en mi caso, terminó sin éxito, aún debería poder adb sideload <filename>
hacerlo manualmente ( video aquí ).
Problema / error
... desafortunadamente la actualización de OTA a través de adb sideload
errores con:
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.
donde /system/app/Drive.apk
podría estar cualquier aplicación del sistema.
¿Quién no tiene la culpa?
- TWRP no tiene la culpa, pensé que sí al principio, pero también funcionaría con TWRP.
- TitaniumBackup Pro. Desde que rooteé mi dispositivo y uso una función de usuario avanzado, debería haber sabido de sus efectos secundarios. Ahora lo sé, sin embargo :) ... y hay una buena posibilidad de que aprendas sobre esto con esta respuesta ahora.
Causa aparente del error
Usando Titanium Backup Pro, utilicé la función "congelar" para eliminar algunas de las aplicaciones del sistema, a saber:
- Teclado ASUS
- Calendario
- Almacenamiento de calendario
- com.android.providers.partnerbookmarks
- com.android.sharedstoragebackup
- com.google.android.voicesearch
- Servicios de intercambio
- Gmail
- Google One Time Init
- Google Play Books
- Juegos de Google Play
- Google Play Magazines
- Google Play Movies
- Google Play Music
- Búsqueda de Google
- Motor de texto a voz de Google
- Hangouts
- iWnn IME
- Teclado iWnnIME (blanco)
- Una vez init
Aparentemente, esta fue la razón por la que adb sideload
salieron temprano con el mensaje de error que figura en mi pregunta.
También desinstalé algunas de las aplicaciones del sistema, y creo recordar que "Drive" (¿recuerdas ?:) /system/app/Drive.apk
fue una de ellas.
La solución
Encontré la solución en forum.xda-developers.com en esta respuesta . La esencia es que si tiene una imagen modificada, debe restaurarla para que la carga lateral de OTA tenga éxito.
Primero descargue la imagen de archivo para la compilación que tiene actualmente. Asegúrese de que sea el correcto para su dispositivo. Así que yo estaba tratando de actualizar JSS15R
a KRT16S
la versión Wi-Fi, lo que significaba que tenía que descargar la 4.3 (JSS15R)
imagen. Ese fue el archivo razor-jss15r-factory-ec2d4f76.tgz
en mi caso. Luego desempaqué lo que me dio una subcarpeta llamada razor-jss15r
. Dentro de él había scripts de shell, un .img
archivo y un .zip
( image-razor-jss15r.zip
). El último necesitaba ser desempaquetado. Luego tuve los .img
archivos en la carpeta en la que desempaqué .zip
:
boot.img
cache.img
recovery.img
system.img
userdata.img
Luego seguí los pasos descritos en la respuesta vinculada:
- iniciar en el gestor de arranque (mantener Volume-downy Powerpresionar directamente después de encenderlo)
- conecte USB (asegúrese antes de eso, que todos los controladores USB estén instalados )
- cambiar a la carpeta con los
.img
archivos previamente descomprimidos
- verifique desde el indicador del SDK de Android con el que ve el dispositivo
fastboot devices
.
- luego ejecute lo
fastboot flash system system.img
que mostrará una partición del sistema
Nota: a diferencia de la publicación vinculada, omití el paso con el fastboot erase system
porque eso aparentemente está implícito en lo fastboot flash system system.img
que se puede ver en la salida. También me excluí fastboot flash boot boot.img
y fastboot flash recovery recovery.img
porque pensé que era poco probable que estas "particiones" hubieran sido modificadas (tenía razón). Sin embargo, es posible que necesite los dos últimos. Probablemente dependerá de lo que haya modificado que impida el adb sideload
paso (es decir, lea y comprenda el mensaje de error).
Aquí está la salida:
# 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 sistema limpio que se puede actualizar OTA.
En resumen, es posible que solo necesite obtener fastboot flash system system.img
de la imagen de stock que está ejecutando, si alguna vez obtiene un error durante la fase de verificación:
Verifying current system...
"/system/<SOME>.apk" has unexpected contents.
E:Error in /tmp/update.zip
(Status 7)
Descargar para imágenes de fábrica (Nexus 7, ambas)