Reputation: 15
I already generated the API key but always getting Authorization failure although the key is correct. And I added every permission needed for this, but still not working;
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.xxx.boutique"
android:versionCode="1"
android:versionName="1.0" >
<permission
android:name="com.xxx.boutique.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="com.xxx.boutique.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<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.WRITE_EXTERNAL_STORAGE" />
<!-- Required to show current location -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- Required OpenGL ES 2.0. for Maps V2 -->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.xxx.boutique.Page_acc"
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="com.xxx.boutique.Catalogue"
android:label="@string/title_activity_catalogue" >
</activity>
<activity
android:name="com.isims.boutique.Contact"
android:label="@string/title_activity_contact" >
</activity>
<activity
android:name="com.isims.boutique.Map"
android:label="@string/title_activity_map" >
</activity>
<activity
android:name="com.isims.boutique.Apropo"
android:label="@string/title_activity_apropo" >
</activity>
<activity
android:name="com.xxx.boutique.Tabmsg"
android:label="@string/title_activity_tabmsg" >
</activity>
<activity
android:name="com.xxx.boutique.Tabrdv"
android:label="@string/title_activity_tabrdv" >
</activity>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="API KEY" />
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
and this is what I get in the logcat, same error every time:
E/Google Maps Android API(2382): Authorization failure. Please see https://developers.google.com/maps/documentation/android/start for how to correctly set up the map.
Upvotes: 0
Views: 1489
Reputation: 1163
Your key is no good. Either you:
1) You are testing this from an .apk file in which you got the key using the wrong SHA1 number. (Should be from your keystore from this app)
or
2) You are testing this from your IDE (Eclipse, etc) and you are using the SHA1 from the keystore from this app. (Should be from your debug keystone from your IDE)
or
3) Your device is getting confused with a previous run. Uninstall it from your device then try again. per twntee request. As twntee said uninstall the app, clean, and rebuild then try again.
Remember there are 2 different keystores. Which one did you use and how are you testing it? By either running it from your IDE or installing the .apk file right on your phone?
UPDATED per twntee.
Upvotes: 2