Permisos de Android SU: ¿Cómo usarlos?

Hay una situación aquí, estoy desarrollando una aplicación de Android, usando Java. Estoy bastante familiarizado con todo esto, pero ahora es la primera vez que necesito usar permisos de SU. Sólo necesito reemplazar (de hecho, renombrar) el archivo en el directorio del sistema / app, pero parece que no puedo realizarlo de una manera habitual (método renameTo en la clase File), simplemente me devuelve FALSE, lo que significa Que hubo algún error en la operación.

Entonces, ¿alguien puede decirme cómo usar SU? Mi teléfono de prueba está totalmente enraizado con SU 3.0.3.2, cualquier aplicación que requiera SU funciona perfectamente bien.

¿Debo usar el mismo método pero con algunas adiciones en manifiesto? ¿Debo usar busybox de alguna manera?

Ya busqué Google para esto, y no puedo encontrar ninguna información útil. Y también, no hay documentación en el sitio oficial de Android Superuser.

¡Gracias por adelantado!

Probablemente también necesite volver a montar el sistema de archivos como RW ya que / system es de sólo lectura. Por lo tanto, puede que necesite llamar a SU con un comando similar a continuación:

mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system

Para ejecutar el comando, puede probar de dos maneras (he notado en android a veces uno funciona y el otro no)

 Process p = Runtime.getRuntime().exec(new String[]{"su", "-c", "mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system"}); 

O puedes hacer

 Process p = Runtime.getRuntime().exec("su"); p.getOutputStream().write("mount -or,remount -t yaffs2 /dev/block/mtdblock3 /system".getBytes()); p.getOutputStream().write(<my next command>); 
  • Obtener permiso "root" para la aplicación de Android
  • Crear aplicación de sistema
  • Visualización de archivos de acceso root / carpetas de android en Windows
  • Permiso de READ_LOGS en Jelly Bean (api 16)
  • Abra cualquier SQLiteDatabase como su / root
  • Adb pull -> dispositivo no encontrado
  • ADB obtener un permiso denegado a pesar de correr como root
  • Ocultar barra de sistema en Jelly Bean Tablet (enraizado)
  • Adb shell su funciona, pero la raíz adb no
  • ¿Cómo conceder acceso root a una aplicación específica desde el código fuente en lugar de arraigar la ROM?
  • No se puede ejecutar en dispositivos de producción
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.