play google generate data create app android google-maps api-key

android - google - keystore generate key



Android: la clave API solo se puede especificar una vez que se duplican<meta-data> (1)

Borre la entrada de metadatos "com.google.android.maps.v2.API_KEY" .

La entrada "com.google.android.geo.API_KEY" es suficiente para los servicios de Mapas y Lugares.

Fuente: https://code.google.com/p/gmaps-api-issues/issues/detail?id=7824

EDITAR - Google actualizó sus documentos para llamar explícitamente a esto ahora:

  1. https://developers.google.com/places/android-api/start#api-key
  2. https://developers.google.com/maps/documentation/android-sdk/signup#use-key

Estoy tratando de agregar el mapa de Google en la aplicación may, por lo que he tomado la clave API. Desafortunadamente, cuando inserté la clave API en manifest.xml a través de una etiqueta de metadatos, insertó automáticamente otra etiqueta de metadatos en el momento de la compilación, como se muestra a continuación. Ahora genera abajo el error mencionado. El peor de los casos es que, aunque elimino cada uno de ellos o ambos, genera de nuevo automáticamente ambas etiquetas en el momento de la compilación y arroja el error.

¿Alguna ayuda?

Error

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.exampl.t_collect/com.exampl.t_collect.activity.MapActivity}: android.view.InflateException: Binary XML file line #6: Error inflating class fragment at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2389) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2441) at android.app.ActivityThread.access$900(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1354) ......... Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class fragment at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713) at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) at android.view.LayoutInflater.inflate(LayoutInflater.java:492) at android.view.LayoutInflater.inflate(LayoutInflater.java:397) .......... Caused by: java.lang.RuntimeException: The API key can only be specified once. It is recommended that you use the meta-data tag with the name: com.google.android.geo.API_KEY in the <application> element of AndroidManifest.xml at com.google.maps.api.android.lib6.c.ad.a(Unknown Source) at com.google.maps.api.android.lib6.a.e.a(Unknown Source) at com.google.android.gms.maps.internal.CreatorImpl.b(Unknown Source)

Etiquetas meta de Manifast.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.exampl.t_collect" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="21" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="com.android.alarm.permission.SET_ALARM" /> <!-- To retrieve OAuth 2.0 tokens or invalidate tokens to disconnect a user. This disconnect option is required to comply with the Google+ Sign-In developer policies --> <uses-permission android:name="android.permission.USE_CREDENTIALS" />

<android:uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" /> <android:uses-permission android:name="android.permission.READ_PHONE_STATE" /> <android:uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="18" /> <android:uses-permission android:name="android.permission.READ_CALL_LOG" /> <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" /> <!-- The ACCESS_COARSE/FINE_LOCATION permissions are not required to use Google Maps Android API v2, but are recommended. --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-feature android:glEsVersion="0x00020000" android:required="true" /> <application android:allowBackup="true" android:debuggable="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.exampl.t_collect.activity.Login" android:label="@string/app_name" android:launchMode="singleTask" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.exampl.t_collect.activity.Dash" android:label="@string/app_name" > </activity> <activity android:name="com.exampl.t_collect.activity.Collection" android:label="@string/title_activity_collection" > </activity> <activity android:name="com.exampl.t_collect.activity.Collection1" android:label="@string/title_activity_collection" > </activity> <activity android:name="com.exampl.t_collect.activity.Collection2" android:label="@string/title_activity_collection" > </activity> <activity android:name="com.exampl.t_collect.activity.Advance" android:label="@string/title_activity_advance" > </activity> <activity android:name="com.exampl.t_collect.activity.Customer" android:label="@string/title_activity_customer" > </activity> <activity android:name="com.exampl.t_collect.activity.Data_store" android:label="@string/title_activity_data_store" > </activity> <activity android:name="com.exampl.t_collect.activity.DataRqeuset" android:label="@string/title_activity_data_rqeuset" > </activity> <activity android:name="com.exampl.t_collect.activity.Settings" android:label="@string/title_activity_settings" > </activity> <activity android:name="com.exampl.t_collect.activity.PastData_activity" android:label="@string/title_activity_past_data" > </activity> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <receiver android:name="com.exampl.t_collect.util.UploadGPS" /> <activity android:name="com.exampl.t_collect.activity.findTrucks" android:label="@string/title_activity_find_trucks" > </activity> <meta-data android:name="com.google.android.geo.API_KEY" android:value="AIzaSy*********************************" /> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="@string/google_maps_key" /> <activity android:name="com.exampl.t_collect.activity.MapsActivity" android:label="@string/title_activity_maps" > </activity> <activity android:name="com.exampl.t_collect.activity.MapActivity" android:label="@string/title_activity_map" > </activity> <!-- Include the AdActivity and InAppPurchaseActivity configChanges and themes. --> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> <activity android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity" android:theme="@style/Theme.IAPTheme" /> <meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true" /> <receiver android:name="com.google.android.gms.wallet.EnableWalletOptimizationReceiver" android:exported="false" > <intent-filter> <action android:name="com.google.android.gms.wallet.ENABLE_WALLET_OPTIMIZATION" /> </intent-filter> </receiver> </application>