Driver de sistema de archivos de usuario de Android en un dispositivo no enraizado?
¿Puedo escribir un sistema de archivos de usuario personalizado que se puede ejecutar en dispositivos de fábrica no arraigados a través de las utilidades estándar disponibles?
Soy consciente de la existencia del fusible-androide , sin embargo hasta donde he entendido, requiere un dispositivo enraizado. Si ese no es el caso, por favor corrijame.
- Desactivar la pantalla en android
- Utilice la biblioteca de RootTools de android para obtener permiso android.permission.STATUS_BAR
- Android: ¿muestra notificaciones incluso si está inhabilitada para la aplicación?
- ¿Por qué no funciona "System.out.println" en Android?
- Cómo cargar las fuentes del sistema en Libgdx? Principalmente para android. ¿Y cómo puedo obtener la lista de fuentes disponibles?
El objetivo que estoy tratando de lograr es crear un FS "falso" que en realidad está montado en un archivo.
- java.lang.SecurityException: Ni el usuario 10032 ni el proceso actual tiene android.permission.MODIFY_PHONE_STATE
- Desactivar la pantalla en android
- Libgdx particleEffect de rotación
- Ventana de superposición del sistema causa problemas de tacto para el teclado y el botón Atrás
- Encuentro dos androide gradle plugin - ¿Hay alguna relación entre los dos?
- Cómo acceder a los archivos de la memoria del teléfono o de la tarjeta SD
- Creación de vínculos duros y enlaces simbólicos en Android
- Anular el tamaño de fuente de la configuración del sistema de Android
Tuve la misma necesidad hace algún tiempo y llegó al punto en el que tuve que admitir que no es posible en absoluto (en su mayoría). No debería ser un problema para construir libfuse para Android, también el envoltorio de Java no es ningún problema.
El problema real es que la mayoría de los sistemas que he visto no se construyen con el apoyo de fusibles de construcción ni tampoco proporcionan módulos que se pueden cargar (lo que requeriría root, pero de todos modos).
Puede averiguar fácilmente si el fusible está habilitado leyendo / proc / filesystems. Debe listar el fusible, de lo contrario necesitará root. Pero es muy probable que la mayoría de los dispositivos de android se construyan sin soporte de fusible.
Mis otras ideas eran usar otro sistema de archivos para "falsificar" algo como un fusible. Esto puede ser posible con nfs o algún otro sistema de archivos de red en el que pueda implementar el servidor por usted mismo. Esto te permitiría escribir un fusible falso, pero no creo que valga la pena.
Edit: E incluso si muchos dispositivos tendrían soporte de fusible, las posibilidades de buildin son altas, no te permitirían montarla como usuario, necesitarías tener acceso root, ya que tu aplicación no tendría los privilegios para montar sistemas de archivos de fusibles.
Luminger casi tiene la idea correcta. Esto es lo que encontré en mi Galaxy S3 (en Verizon):
El material de fusible apropiado existe en / proc / filesystems. Así que algo debe estar utilizando, posiblemente sistema. Sin embargo, cuando intento ejecutar 'fusermount', obtengo "No se puede ejecutar – Permiso denegado."
Así que parece que todo el material de FUSE está ahí, pero no tengo ni idea de si realmente podría usarlo directamente (dropbox? Sshfs?) Sin enraizar el dispositivo.
Depende de su implementación. Lo que suena a mí es que desea tener un archivo (s) físico (s) que representan un sistema de archivos de espacio de usuario completo. Tal vez similar a un .iso montado. Si este es el caso, no puedo pensar en ninguna razón para necesitar raíz: Simplemente cree / instale el archivo en algún lugar como / sdcard / y "monte" su sistema de archivos encima de él.
Dicho esto, si desea que dicho sistema de archivos sea accesible desde otras aplicaciones que no controla, necesitará root, ya que su aplicación se ejecutará en un entorno de prueba de Android de lo contrario.
- No se puede solucionar la excepción MediaController.show ()
- Android x86 emulador extremadamente lento