Domanda

Sono nuovo nello sviluppo di software Android e nuovo in questo sito. Spero che qualcuno possa avere qualche esperienza con il problema che sto riscontrando.

Ho seguito il Ciao, tutorial MapView per imparare non solo il framework Android, ma anche la libreria di Google Maps. Ho fatto del mio meglio per implementare le cose esattamente come indicato dal tutorial. Il mio problema è che l'applicazione viene caricata nel mio emulatore (o anche sul mio telefono), ma i riquadri della mappa non vengono caricati.

Cercando su Google ho trovato un post di qualcun altro su un altro sito con lo stesso problema, ma il suo problema era che gli elementi importanti aggiunti al file AndroidManifest.xml non erano nell'ordine giusto. Ho ricontrollato questo nel mio, ma tutto sembra essere giusto.

Quindi, non sono sicuro di quale sia il problema e spero che altri lo abbiano già visto. Posso fornire eventuali frammenti di codice, se ciò potrebbe aiutare.

Grazie.

È stato utile?

Soluzione

I riquadri senza caricamento sono generalmente il risultato della mancata configurazione corretta della chiave API. Come ottenere una chiave API di Maps

Per rispondere alla risposta che hai lasciato a d .: Se vuoi averlo " basta lavorare " quando corri da Eclipse dovrai ottenere una chiave API per il tuo certificato di debug. Sono presenti istruzioni sulla stessa pagina come prima. Tieni presente che dovrai tornare all'altra chiave prima di pubblicare comunque.

Altri suggerimenti

Suppongo che il problema non sia che hai una chiave della mappa errata, ma che non hai la corretta configurazione del keystore. L'applicazione deve essere firmata dallo stesso keystore utilizzato per generare la chiave della mappa. Hai notato che puoi farlo funzionare quando firmi l'applicazione da solo, ma devi impostare un keystore di debug per utilizzare l'API di Maps con le normali build di Eclipse.

Tutte le build di Eclipse richiedono un keystore di debug; normalmente non te ne accorgi perché ADT ne genera uno automaticamente. Dovresti seguire le indicazioni qui e creare il tuo keystore di debug oppure dovresti prendere la chiave di debug che ADT ha creato automaticamente per te (ti mostrerà dove lo ha creato in Windows > Preferenze > Android > Build ) e iscriviti a un'altra API di Maps chiave. Quella chiave funzionerà con Eclipse.

(P.S., questo rende una seccatura la compilazione per il rilascio, poiché è necessario cambiare la chiave avanti e indietro a seconda del keystore di firma.)

Ho avuto il problema di non caricare anche le tessere. Come hai menzionato il tuo post originale, una possibilità è con l'ordinamento degli elementi nel file AndroidManifest.xml. In particolare, originariamente avevo la linea:

<uses-permission android:name="android.permission.INTERNET" />

dopo l'elemento dell'applicazione. Una volta spostata questa riga prima dell'elemento dell'applicazione, i riquadri della mia mappa hanno ripreso a essere caricati.

I riquadri che non vengono caricati sono quasi sempre il risultato dell'utilizzo di una chiave API non accurata, credo. Hai controllato il tuo?

Dettagli: Ottenere una mappa Chiave API

Ho avuto lo stesso problema ... il mio errore era nel file manifest che inseriva le autorizzazioni INTERNET all'interno dell'applicazione. Dopo averlo spostato (al rialzo), tutti funzionavano bene.

Assicurati di avere 3g sul pannello superiore. In caso contrario, non esiste una connessione Internet. A volte devo accendere e spegnere l'emulatore un paio di volte per far arrivare 3g.

d. è probabilmente corretto. Tuttavia, anche i problemi di Internet causeranno sintomi simili. Assicurati che l'autorizzazione INTERNET sia posizionata correttamente e che non vi siano server proxy / firewall che impediscono l'accesso a Internet.

Un altro problema potrebbe essere un proxy che sei dietro. Il proxy rallenta molto e influirà sulla tua app anche se l'app per le mappe e il browser Internet nell'emulatore funzionano correttamente.

Questa è una vecchia domanda, ma ecco un'altra risposta: se sei frettoloso come me, potresti accidentalmente copiare il codice dell'impronta digitale invece della chiave API dalla pagina Web :)

L'esercitazione Hello, MapView di cui parlavi non è più valida. Le nuove applicazioni cartografiche V1 non possono più essere eseguite.

Segui https://developers.google.com/maps/documentation/android/ per le applicazioni Android API v2 di Google Maps.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top