0

I am using Google map v2 in my application.

I created a custom keystore(release key) and using the same keystore I created SHA1 from here (SHA-1 fingerprint of keystore certificate) and subsequently generated the api key for the map. Now I used eclipse for signing the apk using the above keystore but the map is not getting displayed on the device.

Note: The map works properly using the debug.keystore. Problem is when I sign the apk using the custom release keystore.

I made sure that Google Maps Android API v2 service is ON.

Please let me know where I am going wrong with the implementation. Thanks in advance.

Manifest file:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.mapsdemo"
android:versionCode="2"
android:versionName="1.1" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<!-- Required OpenGL ES 2.0. for Maps V2 -->
<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true" />

 <permission
    android:name="com.test.mapsdemo.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

<supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:xlargeScreens="true" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.test.mapsdemo.permission.MAPS_RECEIVE" android:protectionLevel="signature"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.Black.NoTitleBar" >

   <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="AIzaSyBBhuw2xpWMxTH335vZbYLtUQIyti*****" />

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

    <uses-library android:name="com.google.android.maps" />

    <activity
        android:name=".SplashScreen"
        android:configChanges="orientation|screenSize" >
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".SearchActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="adjustPan" >
    </activity>
    <activity
        android:name=".MapLocationActivity"
        android:configChanges="orientation|screenSize"
        android:launchMode="singleTask" >
    </activity>
    <activity android:name=".HelpActivity" >
    </activity>
    <activity
        android:name=".AddressListActivity"
        android:configChanges="orientation|screenSize"
        android:launchMode="singleTask" >
    </activity>
    <activity
        android:name=".ConfigureUrlActivity"
        android:configChanges="orientation|screenSize" >
    </activity>
</application>

Community
  • 1
  • 1
vivek_25
  • 63
  • 10

1 Answers1

0

Make sure when you try release and sign your apk, you use the SHA1 showing at the end of the process, use that SHA1 in your google API console as well, and of cause, make sure the package is the same name in your app and in your google API console when creating API key

Good luck

JustWe
  • 603
  • 1
  • 5
  • 18