Recientemente obtuve un Huawei P30 y utilicé adb para eliminar algunas aplicaciones preinstaladas que no quería usar. Me pasé un poco y eliminé la aplicación de galería del sistema (com.android.gallery3d
) que resulta ser problemático para varias cosas, como abrir fotos tomadas directamente desde la aplicación de la cámara.
He intentado reinstalarlo pero me enfrento a múltiples problemas:
-
Cuando intento instalar el APK que aún está en el teléfono en
/system/priv-app/Gallery2
, recibo un error deINSTALL_PARSE_FAILED_NO_CERTIFICATES
. El error completo:Fallo [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Error al recopilar certificados de /data/app/vmdl30820468.tmp/base.apk: /data/app/vmdl30820468.tmp/base.apk: El archivo res/drawable-xxxhdpi-v4/img_patten_7.jpg en el manifiesto no existe]
-
Cuando intento instalar una versión que encontré en línea, recibo un
INSTALL_FAILED_VERSION_DOWNGRADE
, lo cual es extraño ya que se supone que la aplicación está desinstalada. No aparece enpm list packages
, sin embargo, al ejecutardumpsys package com.android.gallery3d
da un resultado, y la versión es de hecho más reciente que la que estoy tratando de instalar (9.1.1.309 vs 9.0.15.355). Usar la bandera-d
al instalar no ayuda ya que no es una aplicación de depuración. No pude encontrar una versión más reciente en línea.
¿Hay alguna manera de reinstalar esta aplicación que no involucre un restablecimiento de fábrica? Alternativamente, ¿hay alguna manera de instalar una versión diferente? Parece que com.android.gallery3d
es un nombre genérico de paquete, no me opondría a tener la versión "stock" de Android.
0 votos
Cuando el APK aún está en
/system/priv-app/*
, la aplicación no se desinstala. ¿Estás seguro de que simplemente la has desactivado? ¿Qué comando usaste para desinstalarla a través de ADB?0 votos
Usé
adb uninstall -k --user 0 com.android.gallery3d
. Intentar ejecutarlo nuevamente resulta en un error deno instalado para 0
(con o sin la bandera-k
). No especificar el usuario también arroja un error,DELETE_FAILED_INTERNAL_ERROR
0 votos
Eso solo lo desinstaló para ese usuario, pero deja el APK allí (teóricamente, otro usuario podría seguir ejecutándolo). ¿Has intentado
adb shell "pm install -r " (reemplazando
` por la ruta al archivo APK instalado) o, si lo tienes en tu PC,adb install -r
? Lo importante es el-r
(volver a instalar incluso si está allí).0 votos
La bandera
-r
no ayuda, mismos problemas con ambos métodos (apk dejada en el dispositivo y la que descargué)0 votos
Eso es feo. Solo adivinando: ¿qué sucede cuando introduces el
--user 0
aquí también? entonces ni puede reclamar una versión incorrecta ni que ya esté allí. Si eso tampoco funciona, por favor intentapm default-state app.name
(tomado de este post de XDA). Nunca he tenido esa situación.0 votos
Especificar
--user 0
al instalar no ayudó. Añadí el error completo a la pregunta al intentar con la aplicación en el teléfono ya que no parece estar relacionado con el estado actual de la aplicación sino más bien con el archivo apk en sí.pm defaul-state
dicePackage com.android.gallery3d new state: default
pero no parece tener ningún efecto (la aplicación aún no es visible en ningún lugar, incluso después de reiniciar el teléfono)0 votos
¿Podrías por favor cargar el APK que se encuentra en
/system/priv-app/Gallery2
en algún lugar y compartir el enlace con nosotros? Quiero probar si esto podría ser un problema con el APK.0 votos
Por supuesto: send.firefox.com/download/69b457af2b74203a/… (caduca después de 7 días o 100 descargas, puedo volver a subirlo si es necesario). Ten en cuenta que este APK es el que ya estaba en el teléfono, no el que descargué. Intenté firmarlo pero obtengo el mismo error que antes (
INSTALL_PARSE_FAILED_NO_CERTIFICATES
porque falta un archivo enres/drawables...
). También intenté aumentar el código de versión del descargado usandoapktool
y firmarlo yo mismo, pero me rechazaron porque la firma no es la misma que la versión "existente".0 votos
@Jukurrpa parece que tu problema es el mismo que: ¿Reinstalar la aplicación del sistema que se desinstaló para el usuario actual? Desafortunadamente, eso tampoco está resuelto allí, y se superpone con lo que te pedí que intentaras aquí (¡Firelord me señaló ese, gracias de nuevo!)
0 votos
Wow gracias por el enlace a esta pregunta,
adb shell cmd package install-existing com.android.gallery3d
funcionó! No estaba al tanto de ese comando. ¿Podrías publicarlo como una respuesta para que pueda aceptarlo?0 votos
¡Genial! Y gracias por informar de vuelta. Ahora que has confirmado, he convertido eso en una respuesta. Aunque la cadena de comentarios aquí ahora es obsoleta para ti, sugiero que la dejemos así. Todas esas "posibilidades" podrían ser útiles para alguien más. ¡Disfruta!