Vamos a aclarar algunas confusiones. Cosas para recordar siempre:
-
/data/app
contiene el APK de una aplicación.
(PAQUETE → <a href="https://android.stackexchange.com/questions/28767/view-apps-full-package-name">nombre del paquete de una aplicación</a>)
-
Android 4.x: si la aplicación se instala usando el instalador de paquetes de Android, el nombre del archivo sería PAQUETE-*.apk
donde * es a menudo un entero positivo.
/data/app
no se supone que tenga ningún directorio dentro.
-
Android 5.x: si la aplicación se instala usando el instalador de paquetes, se creará un directorio para la aplicación con el nombre PAQUETE-*
donde * es a menudo un entero positivo. Este directorio contiene el APK de la aplicación con el nombre base.apk
.
-
Para Android 4.x y 5.x, /data/data
contiene solo los datos de las aplicaciones. A todas las aplicaciones se les asigna un directorio con el nombre estrictamente del paquete de la aplicación.
-
Para Android 4.x y 5.x, /data/lib
contiene solo la biblioteca (opcional) de las aplicaciones. A todas las aplicaciones se les asigna un directorio con el nombre PAQUETE-*
donde * es a menudo un entero positivo.
Ahora vamos hacia el problema real.
Cuando se trata de problemas de arranque causados por un módulo Xposed, no deambules por aquí y por allá.
Nota:
- El dispositivo debe arrancar en una recuperación personalizada, la partición de datos se monta allí y se configura adb en la PC.
- PAQUETE → nombre del paquete del módulo Xposed aquí
- A menos que se mencione explícitamente lo contrario, la solución funcionará en versiones de Android 4.2.1 - 5.1.1.
Cuando sepas qué módulo está causando el problema de arranque
Ve a /data/app
y elimina el APK del módulo problemático. Esto se puede hacer desde la interfaz gráfica en TWRP.
Puedes usar la línea de comandos como alternativa
adb shell rm /data/app/PAQUETE\*.apk
Un enfoque menos extremo es deshabilitar el módulo Xposed pero no eliminarlo. Ve al directorio de datos de Xposed Installer /data/data/de.robv.android.xposed.installer
, entra en conf
, y elimina la entrada de tu módulo de modulos.list
. Es tu decisión cómo eliminas la línea.
- Puedes extraer el archivo en la PC, hacer cambios y volver a subirlo.
-
Yo optaría por la línea de comandos
adb shell sed -i '/.\*PAQUETE.\*/d' /data/data/de.robv.android.xposed.installer/conf/modules.list
sed
es un editor de texto y está eliminando cualquier línea que contenga el nombre del paquete del módulo de modulos.list
.
Cuando tengas dudas sobre el módulo exacto que está causando el problema de arranque
-
Ve al directorio de datos de Xposed Installer /data/data/de.robv.android.xposed.installer
, entra en conf
, y elimina o renombra o revoca el permiso de lectura de modulos.list
.
-
Como alternativa, crea un archivo en blanco llamado disabled
(no disable
) dentro del directorio conf
. Esto hará que Xposed Framework no active ningún módulo durante el arranque. Puedes crear el archivo usando la línea de comandos
adb shell touch /data/data/de.robv.android.xposed.installer/conf/disabled
-
Otra alternativa, según el desarrollador del framework rovo89 es
[Es] posible desactivar Xposed pulsando repetidamente uno de los botones de hardware durante el inicio temprano. El teléfono vibrará dos veces cuando se haya detectado la primera pulsación de tecla. Luego tienes cinco segundos para presionar el mismo botón cuatro veces más. Cada pulsación se confirmará con una vibración corta; la final con una vibración larga. Se crea /data/data/de.robv.android.xposed.installer/conf/disabled
, que evita la mayoría de las acciones de Xposed (por ej. ... no se cargan módulos). No hay garantía del 100% de que esto te sacará de un bucle de arranque, pero en la mayoría de los casos debería funcionar.
(Énfasis mío)
Elimina Xposed Framework como último recurso
Android 4.2.x - 4.4.x
Utiliza el archivo Xposed-Disabler-Recovery.zip
ubicado en /sdcard/Android/data/de.robv.android.xposed.installer/files
. Flashea ese archivo desde el modo de recuperación para desactivar Xposed Framework. No elimina la aplicación Installer.
Descarga el archivo desde el hilo oficial, si no tienes uno.
Esa arvhivo, en esencia, cambia /system/bin/app_process.orig
por /system/bin/app_process
. Puedes hacer esos cambios por tu cuenta usando adb en modo de recuperación.
Android 5.x
El hilo oficial alberga un archivo desinstalador. Descarga el relevante para la arquitectura de tu CPU y flashealo desde el modo de recuperación.
Si no estás usando el Xposed Framework oficial entonces es posible que el desinstalador no funcione para ti. Incluso podría causar problemas imprevistos. Lo mejor es buscar en la web el desinstalador.
0 votos
¿No viene Xposed con un archivo ZIP que debe ser flasheado desde la recuperación para desactivarlo? Se instala en tu tarjeta SD cuando instalas Xposed
0 votos
@beeshyams eso "desinstalaría" el marco (es decir, revertiría completamente los parches). No he escuchado el método que describió Danish aquí (de hecho, buscar "data/app/de.rovb.android.xposed.installer/conf/" disabled solo arroja esta publicación aquí), pero podría imaginar que de alguna manera simplemente establece el marco "inactivo" al iniciar, sin embargo, se supone que ese método funciona. Lo que me hace dudar de eso (probablemente un error tipográfico):
/data/app
generalmente solo contiene los archivos.apk
, no subdirectorios. Probablemente se refiere a/data/data/...
.0 votos
@izzy. Gracias. Estaba pensando en deshabilitar el marco de trabajo, eliminar todos los módulos y agregar incrementos, ya que no especificó si sabía qué módulo está causando problemas. Los métodos sugeridos por ti y //firelord están más allá de mí.
0 votos
@Firelord sí, sí, tienes razón ! mi error. @Izzy este método existe, solo necesitas navegar a
data/data/de.robv.android.xposed.installer/conf/
y agregar ese archivodisabled
.0 votos
@DanishAshfaq sí, eso es lo que he señalado. Tu pregunta tiene
/data/app
, que debería ser/data/data
. Y según el post de XDA que he enlazado, el nombre del archivo esdisable
, nodisabled
. ¿Otro error tipográfico?1 votos
@Izzy, para el nombre de archivo, no es un error tipográfico. Verifiqué (en Android 4.2.1 y 5.0.2) que si colocas un archivo en blanco llamado
disabled
(nodisable
) bajoconf/
el Marco Xposed no activa ningún módulo.0 votos
@Firelord ¡Gracias! Así que fue otro error tipográfico, ¡pero esta vez en el otro extremo :)