Tengo una solicitud que necesita permisos de Root para funcionar. No es gran cosa, todos mis dispositivos personales están enraizados, así que estoy muy cómodo con el proceso. El problema es que esta aplicación es para ser usada en dispositivos propiedad de la compañía emitidos a ciertos empleados y no quiero que puedan desinstalar la aplicación ni quiero que tengan acceso Root al dispositivo.
Estaba pensando que el siguiente proceso lograría mis objetivos:
- rootear el dispositivo
- Instalar mi aplicación como una aplicación de sistema
- Lanzar la solicitud y conceder sus derechos sobre ella
- Desenraizar el dispositivo
Como se trataría de una aplicación de sistema, y el dispositivo no estaría rooteado, se impediría a los usuarios eliminar la aplicación. Lo que no estoy seguro es si esa aplicación conservaría o no sus privilegios de root una vez que el dispositivo se desarraigue.
¡Cualquier retroalimentación o perspicacia sería muy apreciada!
2 votos
No puedes instalar tu aplicación como aplicación del sistema, ya que necesitas la misma clave de firma que se utilizó para firmar la ROM en cuestión. Si el dispositivo se desrootea, pierde automáticamente el Root.
1 votos
¿Qué pasa con aplicaciones como Titanium Backup Pro o /system/app mover que convierten las aplicaciones del usuario en aplicaciones del sistema? Usando una de esas aplicaciones es posible convertir una app de usuario en una app de sistema.
0 votos
Incluso si esto funcionara, ¿qué evitaría que alguien rooteara el dispositivo de nuevo y eliminara la aplicación?
0 votos
Técnicamente, nada. Pero como la app que quiero instalar es para monitorizar y gestionar el dispositivo de forma remota, podría saber si lo tienen.
0 votos
¿Cómo? De la declaración anterior - "No quiero que sean capaces de desinstalar la aplicación ni quiero que tengan acceso Root al dispositivo", la cosa es que puede desinstalarlo en cualquier momento.. no hay nada que les impida hacerlo, incluso con adb y cable usb, los empleados podrían ser conocedores de la tecnología sin que lo sepas..
0 votos
En realidad, sería bastante sencillo de decir: .... si la aplicación deja de informar, y el examen del dispositivo revela que la han desinstalado, los despido por manipular mi equipo. Si a través de la monitorización encuentro SuperUser.apk instalado, sé que han vuelto a rootear el dispositivo y los despido por manipular mi equipo.
0 votos
Hmmm... lo único que se me ocurre es crear una ROM personalizada, eso depende de qué dispositivo se trate, si son todos iguales, el trabajo será mucho más fácil, si no, tienes problemas. ¡Y simplemente modificar el código fuente de AOSP para evitar que el gestor de paquetes se desinstale, es decir, hay que hackear una solución rápida de una línea en las entrañas de la misma y empaquetarla con el superusuario y su aplicación, que se oculta a la vista.. aparte de eso, si se habla sin un enfoque de roll-your-own, estás bastante fuera de suerte!
3 votos
@t0mm13b En realidad, ese enfoque de TiBu debería funcionar: Root → instalar TiBu → convertir la app en app del sistema (es decir, se instala en
/system/apps
) → desinstalar TiBu → desrootear. Hecho. Esa app tendría acceso hasta los niveles de protección "signatureOrSystem" entonces. Pero dándole root el acceso es algo diferente (y probablemente ni siquiera sea necesario aquí).