tipos studio proyecto name mapas google example data api_key java android eclipse google-maps android-xml

java - studio - proyecto google maps android



El error "Falló al encontrar el estilo mapViewStyle" persiste (5)

He estado trabajando en esta aplicación durante casi un año (proyecto sénior) cuando decidió romper hace unos días. Mi aplicación se ha desarrollado utilizando Eclipse versión 3.7.2 de 64 bits dirigida a Froyo Android 2.2, utilizando mi PC con Windows 7 de 64 bits. Hasta ahora lo he intentado:

  • reordenando la etiqueta uses-library en el archivo de manifiesto
  • reescribiendo el archivo xml del mapa
  • eliminando el archivo R.java y refrescando
  • colocando el elemento mapview dentro de un diseño
  • reinstalando eclipse y el android-sdk
  • limpiando el proyecto
  • creando un archivo style.xml y haciendo referencia a él
  • desplegando en un dispositivo real
  • volviendo al código anterior

y posiblemente más ...

Mi código es el siguiente: gmap.xml

<?xml version="1.0" encoding="utf-8"?> <com.google.android.maps.MapView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" android:apiKey="0xMbgnc-el963gCdpl547hdkgXUILTskZr-T5uvg" // random key posted here />

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.PubMe" android:versionCode="1" android:versionName="1.0"> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-sdk android:minSdkVersion="8"/> <application android:icon="@drawable/icon" android:label="@string/app_name"> <uses-library android:name="com.google.android.maps" /> <activity android:name=".PubMeActivity" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MappingActivity" android:label="@string/app_name"> </activity> </application> </manifest>

Agradezco cualquier ayuda por adelantado.



Debe incluir /path_to_android-sdk/extras/google/google_play_services/libproject/google-play-services_lib Library como una biblioteca externa en su proyecto y también incluir este archivo jar /path_to_android-sdk/extras/google/google_play_services/libproject/google-play-services_lib/libs/google-play-services.jar .

además de esos, debes tener estos permisos:

<uses-permission android:name="android.permission.INTERNET" /> **<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"/>


Sugiero echar un vistazo a la aplicación de demostración de Mapas. Esto viene incluido con la lib de servicios de Google Play, en su administrador de SDK simplemente incluya la casilla de verificación para ejemplos para los servicios de Google Play. A continuación, puede encontrar los archivos de proyecto @ <android-sdk>/extras/google-play-services/samples/maps en su directorio SDK.


estos son los permisos que debería tener normalmente para un mapa v2

<permission android:name="com.example.gmapsapp.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <uses-permission android:name="com.example.gmapsapp.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" />

y la clave api ahora se usa en el archivo de manifiesto con metaetiqueta

<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="@string/apikey />

aquí estoy incluyendo un archivo xml ejemplo de gmaps

<fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" />


<permission android:name="com.example.app.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <uses-permission android:name="com.example.app.permission.MAPS_RECEIVE"/>

Intente agregar lo anterior en su archivo Manifest.