Un amigo tiene un móvil HTC cuya memoria se llena sin parar. Por defecto, el Market le instala las aplicaciones ahí en lugar de hacerlo en la amplia tarjeta SD, así que cada vez que instala algo lo debe mover de la memoria a la tarjeta con App2SD o SD Move. Mirando las opciones, no parece haber forma de decirle al móvil que lo instale todo en la tarjeta. Pero basta armarse de paciencia, bajar el kit de desarrollo de Android y seguir estas instrucciones para forzar a tu móvil a instalar todas las aplicaciones directamente en la tarjeta (y sin rootear).
Qué necesitas para llevar a cabo el hack
Antes de empezar, descarga los siguientes programas:
- Kit de Desarrollo de Java (JDK)
- Kit de Desarrollo de Android (SDK)
- HTC Sync o drivers USB (como los de Google o estos)
Y en tu móvil, ve a Ajustes > Aplicaciones > Desarrollo y activa Depuración USB.
1. Instalación de los SDK y de las Platform-tools
Para empezar, instala el JDK de Java; luego, haz otro tanto con el SDK de Android. Tras haber instalado el SDK, ejecuta Android SDK Manager y marca el paquete Android SDK Plataform-tools. Instálalo. Este paquete de herramientas contiene el Android Debug Bridge, una utilidad que permite comunicar con un dispositivo Android desde la línea de comandos. Es la que necesitas para decirle a Android que lo instale todo en la tarjeta de memoria.
2. Conectar el móvil al ordenador
Ahora conecta tu móvil Android al ordenador usando el cable USB y elige el modo de conexión HTC Sync. Si se abriese automáticamente HTC Sync en Windows, ciérralo desde el icono de la barra de tareas (clic derecho > Cerrar). Al parecer, no todos los cables son igual de válidos: en algunos casos no conectan bien con el dispositivo. Ten a mano más de uno por si las moscas. Para saber si te sirven, ve al paso 3.
3. Abre una consola de comandos y lleva a cabo comprobaciones
Ve a Inicio > Ejecutar -o presiona Windows+R- y escribe cmd. En la consola de comandos, ve al directorio «Program files (x86)» o «Archivos de programa» y entra en la ruta Android/Android-SDK/Platform-tools. Una vez ahí:
- Escribe adb devices para ver si el móvil está conectado y es reconocible
- Deberías de ver un dispositivo con un número de serie
- Si no aparece, o aparece como offline, prueba otro cable USB
- Escribe netstat y comprueba si el puerto 5037 está en uso
- Es el que usa ADB. Si está en uso, cierra el proceso que lo esté usando
Antes de seguir, es recomendable desactivar cualquier cortafuegos o antivirus residente, ya que puede interferir en el proceso de conexión de ADB con el móvil.
4. Ejecuta el comando para forzar la instalación en tarjetas SD
Android tiene un parámetro que describe cómo se instalan las aplicaciones por defecto en el móvil. Este parámetro se llama setInstallLocation, y acepta tres valores:
- 0 [auto]: Deja que el móvil decida la mejor ubicación para una app
- 1 [internal]: Lo instala todo en el espacio de almacenamiento interno
- 2 [external]: Lo instala todo en la tarjeta de memoria
Como habrás adivinado, lo que hay que hacer es cambiar el valor de setInstallLocation de 0 a 2. Para ello, ejecuta el siguiente comando:
- adb shell pm setInstallLocation 2
Si no sale ningún mensaje de error, desconecta el móvil, apágalo y vuelve a encenderlo. Ahora todas las aplicaciones se instalarán en la tarjeta SD. Si quieres volver a la situación anterior, repite el proceso cambiando el 2 por un cero.
Via: OnSoftware