Categoria: Mobile Mobile
Pubblicato Lunedì, 29 Aprile 2013 29 Aprile 2013
Visite: 36166 36166

Android MarketEccoci di fronte ad un problema molto comune che può capitare quando si compra uno smartphone o tablet con sistema operativo android, che risulta in qualche maniera non ricadere in quei device "non ufficiali" garantiti da google:
Il temibile errore “Impossibile stabilire una connessione dati affidabile al server” quando proviamo ad accedere al Market per scaricare le nostre app preferite.
Per accedere al Market abbiamo bisogno di creare un account di google, per risolvere il problema a volte poco chiaro nel mi ocaso sono andato per tentativi.... infatti esistono parecchi fix e trucchi ma nessuno aveva funzionato in maneira stabile, ecco perchè ho raccolto in questa pagina le varie possibilità.
Prima di tutto è necessario verificare alcune impostazioni: basta andare sul menu applicazioni del dispositivo, voce impostazioni, poi su account e sincronizzazione e abilitare entrambe le opzioni “dati in background” e “sincronizzazione automatica”.

Se questo risulta già impostato ma non non riuscite ancora a risolvere qui gli altri metodi: (non root device)

1) Loggatevi prima nell’ account youtube tramite l'app (utilizzando le stesse credenziali di gmail) e rientrate nel market
nel mio caso ha funzionato 3/10 volte

2) Impostate correttamente la data allo smartphone, a volte si risolve togliendo l’opzione “imposta data da internet” e impostandola manualmente tutto funziona.
nel mio caso ha funzionato 1/10 volte

3) Cosa strana ma a volte funziona, provate cambiando la data mettendo come giorno il giorno precedente e come orario, sei ore dopo.
nel mio caso ha funzionato 1/10 volte

4) Accedete a Google Play collegandovi però da un altro punto WiFi.
nel mio caso ha funzionato parecchie volte tranne che da casa... ma soluzione poco soddisfacente direi...

Tutti questi tentativi sono stati effettuati nel momento in cui il mio tablet non era ancora sbloccato (root) nel momento che sono riuscito a effettuare il root, ho potuto lavorare molto meglio e analizzare il problema. Alla fine ho risolto in maniera veramente da geek! :-) !!
il problema risiedeva nel file di sistema “hosts” che si trova in /system/etc

> root@android:/system/etc: cat hosts                                          
> 127.0.0.1                    localhost
> 74.125.93.113 android.clients.google.com

??? 74.125.93.113 android.clients.google.com ??? Che ci fa sta cosa? probabilmente qualche residuo nella rom originale del device! che puntava a un indirizzo statico del market!

Bisogna modificare questo file, cancellando tutte le voci a parte la prima: nel mio caso ho lasciato solo “127.0.0.1 localhost”
Ovviamente è possibile solo con root!

L'operazione può essere eseguita utilizzando una shell direttamente sul dispositivo ("ConnectBot" oppure "Emulatore di terminale") oppure tramite l'installazione dell'utility "adb".
Se durante il tentativo di modifica e/o salvataggio risultasse impossibile salvare il file ("Permission Denied"), sarà necessario rimontare il filesystem in lettura e scrittura per aggirare il problema,
iIn genere questo viene fatto con partizione /system

Esempio usando il comando adb
$ adb shell
$ su
$ mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system

(Sostituire / dev/block/mtdblock3 e / sistema con adeguato percorso di dispositivo e del punto di montaggio, in quanto ottenuto da cat / proc / mounts)

Riavviare il device!