Tengo un Moto G (2da generación) con Android 5.02. La tarjeta SD interna es de aproximadamente 8 Gb y tengo una tarjeta SD externa con 16 Gb de espacio libre.
Mover la aplicación a SDCARD desde el menú de la aplicación la mueve a sdcard0, que es la tarjeta SD interna.
Comando de shell Adb:
pm get-install-location
me da
0[auto]
Traté de establecer la ubicación de instalación a través de:
pm set-install-location 2
Pero recibo este error:
Error: java.lang.SecurityException: Package android does not belong to 2000
Es decir, creo quejarse de los permisos de root.
Y porque es una construcción de producción que intenta:
adb root
me da
adbd cannot run as root in production builds
¿Hay alguna forma de configurar las aplicaciones para instalar sus datos en una tarjeta SD externa?
PD: No quiero instalar una rom personalizada o instalar software de terceros para rootear el teléfono.
Editar:
He notado que los datos de las aplicaciones se almacenaron en la carpeta /storage/sdcard0/Android
, así que pensé en mover esta carpeta /storage/sdcard1/
y crear un enlace simbólico de esta manera:
ln -s /storage/sdcard1/Android /storage/sdcard0/Android
¿hará esto el trabajo?
Gracias.
fuente
/sdcard/sdcard0/Android
. Las aplicaciones se almacenan en una carpeta oculta llamada.android_secure
donde ni siquieraroot
tiene acceso (lo probé en mi dispositivo, ni siquiera puedes accedercd
a esa carpeta).sdcard_rw
pertenezcan alroot
grupo o que no presenten al usuariosdcard_rw
en absoluto. Pero con un poco de cambios de permiso, debería poder resolverlo.ls -l /storage/sdcard0
me dio estolrwxrwxrwx root root 2015-04-20 15:59 sdcard0 -> /storage/emulated/legacy
y correrls -l /storage/sdcard0/
me dio estodrwxrwx--x root sdcard_r 2014-12-20 18:16 Android
.. ¿Es una buena o mala noticia? Como no soy root, creo que no puedo establecer permisos.Básicamente puedes! ;)
Después de reiniciar, CADA aplicación que instales irá automáticamente a la tarjeta SD.
Si no sabe cómo crear una partición, busque una guía en Google, hay muchas
fuente
Ese fue un gran viaje en busca de una respuesta que no involucrara el enraizamiento, pero terminé:
Desbloqueo de mi gestor de arranque
Arrancar en TWRP sin instalarlo:
Instalación de SuperSU de Chainfire con TWRP.
Desde el emulador de terminal o el shell de adb :
Desde el menú de una aplicación con
Settings > Applications
solo presionarla, seMove to SDCARD
mueve *, sus datos y obb, a la SDCARD externa.Eliminando SuperSU ......
Nah ... no hice eso! 3 :)
fuente
Vaya a esta dirección http://developer.android.com/tools/help/shell.html#shellcommands
Android 5 y superior no es compatible con esto
pm get-install-location
Intente hacer una copia de seguridad de su apk y siga los pasos a continuación
Ejemplo
-r significa reinstalar apk con los datos existentes y -s significa tarjeta sd
fuente
-s
es para especificar en qué dispositivo debe funcionar adb ("-s <serialNumber>
").Primero instale Adbd insecure ( descarga de apk de xda-developers ).
Una vez instalado en su dispositivo, ábralo y marque la casilla: "Habilitar adbd inseguro".
Ahora puede cambiar la ubicación para instalar sus aplicaciones.
fuente