jman0
VIP
Es posible que, de la noche a la mañana, tu fg8 deje de descargar del Android Market. Casi todas las descargas fallarán con un mensaje que dirá "Descarga incorrecta". Eso me ocurrió a mí hace un par de días.
¿Cuál es la causa? Pues simple y llanamente que el Android Id de tu teléfono es incorrecto. No sé si viene así de fábrica, o se modifica por extrañas razones (en otros móviles es sabido que ha pasado por cambiar de rom) pero de repente, te encuentras con que tu Android Id es "9774d56d682e549c", que resulta ser un id genérico, por lo que el market no funcionará, salvo unas pocas (casi ninguna) aplicaciones.
¿Qué se puede hacer? Pues cambiar el id, así de sencillo, y así de complicado.
En el Market, existe una aplicación llamada "Android Id Changer", pero no funciona con el fg8, ya que trata de cambiar una base de datos del sistema que en el fg8 no se encuentra donde la busca. Por tanto, hay que hacerlo todo a mano. El proceso no es corto, pero tampoco interminable ni complicado.
Proceso a seguir:
1) Bajar el SDK (Kit de desarrollo) de Android, de http://developer.android.com/sdk/index.html
2) Bajar una imagen del Android Market, de http://www.4shared.com/file/165624746/fc72c3ed/system.html. El archivo se llama system.img
3) Descomprimir el SDK donde se desee, y con el explorador de archivos de Windows, ir a la carpeta donde se ha descomprimido, abrir el archivo "SDK Manager.exe". Indicará los paquetes instalados y los disponibles para instalar (bajar). Que yo sepa, creo que bastaría con los paquetes de Android 1.6, pero por si acaso, yo instalé todo.
4) Una vez instalado todo, ir a "Virtual devices" y pinchar en "New", con lo que crearemos un dispositivo emulador de Android, el cual usaremos para crear el Id que pondremos a nuestro fg8. Como nombre, pondremos lo que queramos, y como "Target" (plataforma) escogeremos Android 1.6. Yo lo he probado con 1.6, 2.2 y 3.0, y sólo me funcionó el 1.6. Como resolución, basta con escoger HVGA, para poder ver el emulador en pantalla sin tenerle que moverlo o ponerlo en pantalla completa. En hardware, agregaremos "Touchscreen support" y "Device RAM size". Al final, deberá quedar como en la siguiente imagen:
[Imagen Externa Rota]:http://imageshack.us/photo/my-images/98/marketfix.png/[Imagen Externa Rota]:http://imageshack.us/photo/my-images/98/marketfix.png/http://imageshack.us/photo/my-images/98/marketfix.png/
5) Nada más terminar, necesitamos saber dónde está físicamente el emulador, y después copiar entre sus archivos la imagen (system.img) del market que hemos bajado antes. Para saber en qué carpeta se ha creado el emulador, hay que pinchar en "Details".
6) Arrancar el emulador de Android con el botón Start.
7) Al iniciarse, el emulador se comporta como un móvil normal y corriente, y como tenemos el Market, gracias a la imagen descargada y copiada junto al emulador, nos pedirá una cuenta de Google para conectarnos y asociar el emulador a dicha cuenta. IMPORTANTE: En este punto hay que conectarse con la misma cuenta usada en el fg8. Si en algún momento, el emulador os pide sacar el teclado deslizable (se comporta como si fuera un HTC G1), pulsad Ctrl+F11. Lo mismo cuando pida volver a guardar el teclado.
8) Una vez que nos hayamos conectado, hay que seguir adelante hasta que el emulador muestre la página principal del launcher de Android y desparezca de la barra de notificaciones el icono de sincronización.
9) Con el emulador abierto, abrir una ventana de comandos en Windows y entrar en la carpeta "platform-tools", dentro de aquella en la que hayamos descomprimido e instalado el SDK.
10) Introducir la instrucción "adb devices", que muestra una lista de dispositivos conectados. Debería haber sólo uno.
11) En este punto, necesitamos averiguar cuál es el Id del emulador, porque es el que usaremos en el fg8, para que tenga un Id válido y no el genérico. Para eso, se ejecuta en la ventana de comandos la instrucción:
adb shell sqlite3 /data/data/com.google.android.googleapps/databases/accounts.db "select * from meta";
En la ventana de comandos, aparecerá un número, que tendremos que copiar, en el bloc de notas o donde queramos.
12) En este punto ya se puede cerrar el emulador. A partir de aquí se pueden seguir dos caminos. Por un lado, se puede usar la misma instrucción de antes "adb", con diferentes comandos, para poner el nuevo Id en nuestro fg8, pero yo no he encontrado ningún tutorial fiable, ya que la mayoría están desfasados y no son aplicables al fg8.
Entonces, ¿qué se puede hacer? Pues algo muy simple: cambiar el Id desde Android. Y para ello, hay que modificar 2 bases de datos del sistema, con mucho cuidado (recomendable, como siempre que se toca algo del sistema, hacer una copia de seguridad primero). Los requisitos para hacerlo son:
a) Tener el móvil rooteado. Hay en este mismo foro tutoriales sobre cómo rootear un móvil con Android y, más impiortante, qué es rootear.
b) Root Explorer. Disponible en el Market o en sitios "alternativos". Actualmente es de pago, aunque antes era gratis.
c) SQLite Editor. Editor de bases de datos en formato SQLite, el que usan las aplicaciones Android. También está en el market o en sitios "alternativos". También es de pago, aunque sólo cuesta un poco más de 2 dólares, lo cual no es gasto para una aplicación que te va a salvar el culo.
Con todo esto ya hecho, hay que abrir 2 bases de datos con Root Explorer. Al abrirlas, el propio Root Explorer llama a SQLite Editor para cambiar los valores. Estas son las dos bases de datos que hay que abrir, y las tablas y campos que hay que modificar:
/data/data/com.android.providers.settings/databases/settings.db
Tabla "secure" y campo "android_id": IMPORTANTE: En este caso, hay que coger el Id del emulador que hemos copiado antes y convertirlo a hexadecimal. El resultado de esa conversión (que se puede hacer con la calculadora de Windows) es lo que irá en el campo.
/data/data/com.google.android.gsf/databases/gservices.db
Tabla "main" y campo "androidId": Id en decimal, sin convertir
Una vez guardados los datos, se reinicia el móvil.
Si queréis comprobar si el cambio ha tenido éxtio, podéis usar el programa "Android Id Changer" del que hablaba antes. No funciona a la hora de cambiar el Id, pero sí muestra el actual.
La primera vez que entréis en el market lo más probable es que no os aparezcan tantas aplicaciones como antes, pero eso se debe a que el Id que tenéis ahora es de un dispositivo que inicialmente tenía Android 1.6, y muchas aplicaciones no son compatibles.
Pero tranqulos, tiene solución. Hay que ir a Ajustes->Aplicaciones->Administrar aplicaciones, y hacer las siguientes tareas, antes de volver a reiniciar:
Seleccionar "Administrador de descargas" y pinchar en "Forzar detención" y "Borrar datos".
Seleccionar "Market" y y pinchar en "Forzar detención", "Borrar datos", y "Borrar caché".
Es importante reiniciar, porque si intentáis entrar en el Market, os dirá que se ha producido un error. Después, una vez arrancado el Market, tendréis de nuevo las mismas aplicaciones que antes y podreis volver a descargar instalar.
Suerte a los que os pase, pero, tranquilos, no es complejo. Yo mismo lo he hecho en poco menos de dos horas, y eso que he tenido que improvisar, cuando he visto que los tutoriales que había en internet no servían para el fg8.
¿Cuál es la causa? Pues simple y llanamente que el Android Id de tu teléfono es incorrecto. No sé si viene así de fábrica, o se modifica por extrañas razones (en otros móviles es sabido que ha pasado por cambiar de rom) pero de repente, te encuentras con que tu Android Id es "9774d56d682e549c", que resulta ser un id genérico, por lo que el market no funcionará, salvo unas pocas (casi ninguna) aplicaciones.
¿Qué se puede hacer? Pues cambiar el id, así de sencillo, y así de complicado.
En el Market, existe una aplicación llamada "Android Id Changer", pero no funciona con el fg8, ya que trata de cambiar una base de datos del sistema que en el fg8 no se encuentra donde la busca. Por tanto, hay que hacerlo todo a mano. El proceso no es corto, pero tampoco interminable ni complicado.
Proceso a seguir:
1) Bajar el SDK (Kit de desarrollo) de Android, de http://developer.android.com/sdk/index.html
2) Bajar una imagen del Android Market, de http://www.4shared.com/file/165624746/fc72c3ed/system.html. El archivo se llama system.img
3) Descomprimir el SDK donde se desee, y con el explorador de archivos de Windows, ir a la carpeta donde se ha descomprimido, abrir el archivo "SDK Manager.exe". Indicará los paquetes instalados y los disponibles para instalar (bajar). Que yo sepa, creo que bastaría con los paquetes de Android 1.6, pero por si acaso, yo instalé todo.
4) Una vez instalado todo, ir a "Virtual devices" y pinchar en "New", con lo que crearemos un dispositivo emulador de Android, el cual usaremos para crear el Id que pondremos a nuestro fg8. Como nombre, pondremos lo que queramos, y como "Target" (plataforma) escogeremos Android 1.6. Yo lo he probado con 1.6, 2.2 y 3.0, y sólo me funcionó el 1.6. Como resolución, basta con escoger HVGA, para poder ver el emulador en pantalla sin tenerle que moverlo o ponerlo en pantalla completa. En hardware, agregaremos "Touchscreen support" y "Device RAM size". Al final, deberá quedar como en la siguiente imagen:
[Imagen Externa Rota]:http://imageshack.us/photo/my-images/98/marketfix.png/[Imagen Externa Rota]:http://imageshack.us/photo/my-images/98/marketfix.png/http://imageshack.us/photo/my-images/98/marketfix.png/
5) Nada más terminar, necesitamos saber dónde está físicamente el emulador, y después copiar entre sus archivos la imagen (system.img) del market que hemos bajado antes. Para saber en qué carpeta se ha creado el emulador, hay que pinchar en "Details".
6) Arrancar el emulador de Android con el botón Start.
7) Al iniciarse, el emulador se comporta como un móvil normal y corriente, y como tenemos el Market, gracias a la imagen descargada y copiada junto al emulador, nos pedirá una cuenta de Google para conectarnos y asociar el emulador a dicha cuenta. IMPORTANTE: En este punto hay que conectarse con la misma cuenta usada en el fg8. Si en algún momento, el emulador os pide sacar el teclado deslizable (se comporta como si fuera un HTC G1), pulsad Ctrl+F11. Lo mismo cuando pida volver a guardar el teclado.
8) Una vez que nos hayamos conectado, hay que seguir adelante hasta que el emulador muestre la página principal del launcher de Android y desparezca de la barra de notificaciones el icono de sincronización.
9) Con el emulador abierto, abrir una ventana de comandos en Windows y entrar en la carpeta "platform-tools", dentro de aquella en la que hayamos descomprimido e instalado el SDK.
10) Introducir la instrucción "adb devices", que muestra una lista de dispositivos conectados. Debería haber sólo uno.
11) En este punto, necesitamos averiguar cuál es el Id del emulador, porque es el que usaremos en el fg8, para que tenga un Id válido y no el genérico. Para eso, se ejecuta en la ventana de comandos la instrucción:
adb shell sqlite3 /data/data/com.google.android.googleapps/databases/accounts.db "select * from meta";
En la ventana de comandos, aparecerá un número, que tendremos que copiar, en el bloc de notas o donde queramos.
12) En este punto ya se puede cerrar el emulador. A partir de aquí se pueden seguir dos caminos. Por un lado, se puede usar la misma instrucción de antes "adb", con diferentes comandos, para poner el nuevo Id en nuestro fg8, pero yo no he encontrado ningún tutorial fiable, ya que la mayoría están desfasados y no son aplicables al fg8.
Entonces, ¿qué se puede hacer? Pues algo muy simple: cambiar el Id desde Android. Y para ello, hay que modificar 2 bases de datos del sistema, con mucho cuidado (recomendable, como siempre que se toca algo del sistema, hacer una copia de seguridad primero). Los requisitos para hacerlo son:
a) Tener el móvil rooteado. Hay en este mismo foro tutoriales sobre cómo rootear un móvil con Android y, más impiortante, qué es rootear.
b) Root Explorer. Disponible en el Market o en sitios "alternativos". Actualmente es de pago, aunque antes era gratis.
c) SQLite Editor. Editor de bases de datos en formato SQLite, el que usan las aplicaciones Android. También está en el market o en sitios "alternativos". También es de pago, aunque sólo cuesta un poco más de 2 dólares, lo cual no es gasto para una aplicación que te va a salvar el culo.
Con todo esto ya hecho, hay que abrir 2 bases de datos con Root Explorer. Al abrirlas, el propio Root Explorer llama a SQLite Editor para cambiar los valores. Estas son las dos bases de datos que hay que abrir, y las tablas y campos que hay que modificar:
/data/data/com.android.providers.settings/databases/settings.db
Tabla "secure" y campo "android_id": IMPORTANTE: En este caso, hay que coger el Id del emulador que hemos copiado antes y convertirlo a hexadecimal. El resultado de esa conversión (que se puede hacer con la calculadora de Windows) es lo que irá en el campo.
/data/data/com.google.android.gsf/databases/gservices.db
Tabla "main" y campo "androidId": Id en decimal, sin convertir
Una vez guardados los datos, se reinicia el móvil.
Si queréis comprobar si el cambio ha tenido éxtio, podéis usar el programa "Android Id Changer" del que hablaba antes. No funciona a la hora de cambiar el Id, pero sí muestra el actual.
La primera vez que entréis en el market lo más probable es que no os aparezcan tantas aplicaciones como antes, pero eso se debe a que el Id que tenéis ahora es de un dispositivo que inicialmente tenía Android 1.6, y muchas aplicaciones no son compatibles.
Pero tranqulos, tiene solución. Hay que ir a Ajustes->Aplicaciones->Administrar aplicaciones, y hacer las siguientes tareas, antes de volver a reiniciar:
Seleccionar "Administrador de descargas" y pinchar en "Forzar detención" y "Borrar datos".
Seleccionar "Market" y y pinchar en "Forzar detención", "Borrar datos", y "Borrar caché".
Es importante reiniciar, porque si intentáis entrar en el Market, os dirá que se ha producido un error. Después, una vez arrancado el Market, tendréis de nuevo las mismas aplicaciones que antes y podreis volver a descargar instalar.
Suerte a los que os pase, pero, tranquilos, no es complejo. Yo mismo lo he hecho en poco menos de dos horas, y eso que he tenido que improvisar, cuando he visto que los tutoriales que había en internet no servían para el fg8.
Última edición: