La API de Google Maps para Android no funciona con debug.keystore

Estoy intentando crear una aplicación MapView siguiendo el tutorial del sitio web de Android aquí . Tengo todo configurado y el mapa muestra pero con azulejos vacíos!

La clave de API que estoy utilizando se genera a partir de la depuración.keystore ubicada en "C: \ Users \ Pete \ .android" y todos los permisos correctos se configuran en el manifiesto. La biblioteca de mapas también está en el manifiesto pero todavía no funciona. He intentado crear una nueva almacén de la llave de la depuración y la he puesto en la misma carpeta (obviamente también generar una nueva llave de la API) y todavía no suerte.

(30/05/2011) Editar sección:

Manifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.stringerapps.testing.gps" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Home" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- import the library com.google.android.maps!!! --> <uses-library android:name="com.google.android.maps" /> <!-- permissions --> <uses-permission android:name="android.permission.INTERNET"> </uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"> </uses-permission> </application> </manifest> 

Layout.xml

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mainlayout" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <com.google.android.maps.MapView android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:apiKey="api-key-here-omitted"/> </RelativeLayout> 

Home.xml

 package com.stringerapps.testing.gps; import java.util.List; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.widget.LinearLayout; import com.google.android.maps.GeoPoint; import com.google.android.maps.MapActivity; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; import com.google.android.maps.OverlayItem; public class Home extends MapActivity { LinearLayout linearLayout; MapView mapView; List<Overlay> mapOverlays; Drawable drawable; MyItemizedOverlay itemizedOverlay; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layout); mapView = (MapView) findViewById(R.id.mapview); mapView.setBuiltInZoomControls(true); mapOverlays = mapView.getOverlays(); drawable = this.getResources().getDrawable(R.drawable.androidmarker); itemizedOverlay = new MyItemizedOverlay(drawable); GeoPoint point = new GeoPoint(19240000, -99120000); OverlayItem overlayitem = new OverlayItem(point, "", ""); GeoPoint point2 = new GeoPoint(35410000, 139460000); OverlayItem overlayitem2 = new OverlayItem(point2, "", ""); itemizedOverlay.addOverlay(overlayitem); itemizedOverlay.addOverlay(overlayitem2); mapOverlays.add(itemizedOverlay); } @Override protected boolean isRouteDisplayed() { return false; } } 

Su archivo de manifiesto necesita algunas reorganizaciones:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.stringerapps.testing.gps" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <!-- permissions --> <uses-permission android:name="android.permission.INTERNET"> </uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"> </uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Home" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- import the library com.google.android.maps!!! --> <uses-library android:name="com.google.android.maps" /> </application> </manifest> 

Prueba eso y buscaré en tus otros archivos para ver si puedo encontrar algo más.

Las etiquetas <uses-permission> deben ir fuera de la etiqueta <application> .

Ver: Mapa de Google que muestra sólo los cuadros en blanco android

Lo importante aquí es siempre utilizar la huella adecuada (keystore para la huella digital). Tuve el mismo problema antes :). Si está depurando su aplicación, utilice la huella dactilar de depuración como se describe aquí y estará a salvo. Entonces si usted decidirá publicar la aplicación entonces usted creará la huella digital propia para el uso público.

  • Cómo mostrar mapas en una aplicación de Android, si los servicios de Google Play no están instalados en un teléfono
  • Cómo girar marcador (bus) de acuerdo a la dirección?
  • Android setOnMarkerClickListener establecer título para cada marcador
  • Descomposición ETA de Google Maps Navigation
  • El marcador de Google Maps desaparece después de hacer zoom en android
  • Google Maps Android V2 relleno con rotación alrededor del usuario
  • Mapa no funciona después de instalar desde la tienda de juegos en android
  • PlaceAutoCompleteFragment en android no muestra sugerencias y se cierra después de ingresar la primera letra
  • Agregar API de Google al proyecto existente de eclipse
  • Cómo eliminar marcador específico en Android GoogleMap
  • ¿Cómo logro una animación suave del marcador de ubicación en android en un mapa de google?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.