Android N Testers: he aquí por qué sus aplicaciones raíz siguen fallando

Te encanta vivir a la vanguardia, así que subiste a bordo e instalaste las nuevas compilaciones de vista previa de Android N de Google. Si está ejecutando el software como su controlador diario (tal vez le gustan las cosas que se bloquean y se queman, ¿quién sabe?), Entonces probablemente haya notado que muchas de sus aplicaciones favoritas simplemente no funcionan en absoluto. Has presentado la versión beta SuperSU de Chainfire para Android N para aliviar parte de la miseria con un mejor control del sistema, pero muchas aplicaciones raíz también se rompen. ¿Por qué? ¿Y cómo se pueden arreglar? Según Chainfire, la razón es porque Google se está alejando de la caja de herramientas hacia toybox (y lo ha estado desde Android Marshmallow), y ahora ha eliminado el soporte de montaje de la caja de herramientas . Si ha tenido problemas con las aplicaciones raíz en el pasado, probablemente haya visto la palabra 'caja de herramientas' antes. Si no lo has hecho, dejaré que Chainfire explique de qué se trata:

Las tres cajas en Android son toolbox, busybox y toybox. Estos cuadros proporcionan implementaciones para varios comandos básicos de Unix, similares a los que GNU Core Utils proporciona en varias distribuciones de Linux.

Toolbox fue hasta hace poco la implementación estándar de Android. busybox es más o menos la caja estándar fuera de Android, con licencia GPL, y muchos la han portado a Android. toybox es una alternativa con licencia BSD a busybox creada por un antiguo responsable de busybox . toybox apareció por primera vez en Android en M, y está reemplazando lentamente la implementación de la caja de herramientas para varios comandos.

Estos comandos son utilizados principalmente por aplicaciones raíz, scripts de dispositivos y usuarios de emuladores de terminal / shell adb.

En cuanto a por qué es probable que haya tenido problemas derivados de la caja de herramientas o de la caja ocupada antes, por Chainfire:

Muchas aplicaciones raíz necesitan ejecutar comandos proporcionados por estos cuadros. Si bien el comando base es generalmente el mismo, los parámetros aceptados, el funcionamiento exacto y la salida diferirán entre las implementaciones y las diferentes versiones de esas implementaciones.

Básicamente, dado que algunas de sus aplicaciones raíz requieren un comando específico que se puede encontrar en un cuadro, pero otra aplicación puede requerir otro comando específico que se encuentra en otro cuadro, muchos usuarios han tenido problemas para que ciertas aplicaciones raíz funcionen correctamente porque su implementación de cuadro no funciona Tiene todos los comandos correctos. Esto causa un dolor de cabeza a los desarrolladores como Chainfire que tienen que lidiar con usuarios que se preguntan por qué su aplicación no funciona. La mayoría de los usuarios probablemente tengan instalada una implementación de b usybox, pero los desarrolladores pueden llamar a toolbox directamente en lugar de esperar que su instalación tenga los comandos adecuados con los parámetros adecuados necesarios para que su aplicación raíz funcione. Sin embargo, esta solución está rota en Android N. Per Chainfire:

Desafortunadamente, en N Preview, el montaje de toybox ha reemplazado el montaje de caja de herramientas como la implementación predeterminada, y lo que es peor, el montaje de caja de herramientas se ha eliminado, por lo que no puede recurrir a él. Si bien el montaje de toybox parece haberse librado de su saga de segfaults, todavía no funciona tan bien. No tan bien como la implementación de la caja de herramientas que ha reemplazado, al menos.

Es por eso que sus aplicaciones raíz en Android N están fallando. Chainfire ha tratado de corregir parcialmente algunas de las aplicaciones rotas que usan formas populares del comando mount aplicando una solución dentro de SuperSU 2.70, sin embargo, no todas las aplicaciones serán reparadas. Si es un usuario final, no puede hacer nada al respecto hasta que el desarrollador de su aplicación favorita presente una actualización. Si usted es un desarrollador que se pregunta por qué los usuarios de Android N tienen problemas, debería leer la publicación completa de Chainfire para tener una idea de cómo solucionar su aplicación.


¿Ha fallado alguna aplicación raíz mientras estaba en Android N? ¡Hágales saber a todos en los comentarios a continuación (y especialmente intente comunicarse con el desarrollador)!