2013-05-24 20 views
7

1) È mostrando la mappa vuota con il colore grigio solo con i pulsanti + (zoom in) e - (riduzione).Google Map non viene visualizzata in Android

2) I estratto lo SHA1 chiave dal debug.keystore e generato il tasto V2 MAP API nella console .

3) I incollato quella chiave nel file manifesto.

4) GOOGLE MAP API V2 acceso

e uso il mio Nexus 7 per il debugging (debug USB)

  • LogCat Messaggio:

Impossibile caricare la mappa. Errore durante il contatto con i server di Google. Questo è probabilmente un problema di autenticazione (ma potrebbe essere dovuto agli errori di rete ).

Si prega di aiuto se ho sbagliato da qualche parte in questi file.

AndoidManifest.xml

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="metro.tailors" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="17" /> 
    <permission android:name="metro.tailors.permission.MAPS_RECEIVE" android:protectionLevel="signature"/> 
<uses-permission android:name="metro.tailors.permission.MAPS_RECEIVE"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-feature android:glEsVersion="0x00020000" android:required="true"/> 
    <application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
     <activity 
      android:name="metro.tailors.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name="metro.tailors.FactorsActivity" 
     android:label="@string/title_activity_factors" > 
    </activity> 
    <activity 
     android:name="metro.tailors.LadiesCategoryActivity" 
     android:label="@string/title_activity_ladies_category" > 
    </activity> 
    <activity 
     android:name="metro.tailors.GentsCategoryActivity" 
     android:label="@string/title_activity_gents_category" > 
    </activity> 
    <activity 
     android:name="metro.tailors.MapActivity" 
     android:label="@string/title_activity_map" > 
    </activity> 
    <meta-data 
android:name="com.google.android.maps.v2.API_KEY" 
android:value="AIzaSyA2pMJiaPfwlz2yKaRNMZHykQkY_******"/> 

</application> 
</manifest> 

Questo il file XML del MapActivity

 <?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/map" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:name="com.google.android.gms.maps.MapFragment"/> 

MapActivity.java

 package metro.tailors; 

     import android.os.Bundle; 
     import android.app.Activity; 

     public class MapActivity extends Activity { 

      @Override 
      protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 
       setContentView(R.layout.activity_map); 
      } 

     } 
+2

android: minSdkVersion = "10" si dovrebbe usare frammento di supporto in questo caso. Controlla di nuovo la chiave. Vedi se hai abilitato le mappe nella console di api. – Raghunandan

+0

Assicurati inoltre di aver fatto riferimento correttamente alla libreria dei servizi di gioco di google – Raghunandan

risposta

7
4) GOOGLE MAP API V2 switched ON 

Si dovrebbe accendere Google Maps for Android:

enter image description here

Fragment sostegno che partire da API > 11, Quindi, o modificare il file manifest a quella o aggiungere Biblioteca Android-supporto e utilizzare l'oggetto SupportMapFragment a fianco con FragmentActivity.

Per scaricare la libreria di supporto, controllare il collegamento seguente.

http://developer.android.com/tools/extras/support-library.html#Downloading

gli stati doc classe Utilizzare MapFragment solo se si prendono di mira API 12 e sopra. Altrimenti, usa SupportMapFragment.

https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/MapFragment.

+0

+1 per la risposta. – Raghunandan

+0

Grazie per la modifica @Raghunandan, non ero sicuro del livello del pacchetto che dovrebbe essere usato:) –

+0

Siete i benvenuti. felice di poter individuare e aiutarti con la risposta. – Raghunandan

0

per quanto riguarda:

2) I extracted the SHA1 key from the debug.keystore and generated the MAP API V2 key in the console.

Non solo si deve fare questo, si deve anche aggiungere l'app per l'elenco delle applicazioni consentite nell'API Console di Google, con la chiave di debug e il nome del pacchetto , così come con la chiave di chiavi di produzione e il nome del pacchetto

Problemi correlati