amahrt
amahrt

Reputation: 523

Android SHA1 release keystore not working with Google Maps

I am using the Google Maps Android API and I'm running into some issues.

I am signing my apk with android studio (created one at .android/keystore.jks). Also I'm selecting "release" as type in it. I have used the command

keytool -list -v -keystore C:\Users\Toshiba\.android\keystore.jks

to get the SHA1 fingerprint out of the keystore.

The SHA1 is correct, but the Map is not shown on a signed APK. It is shown in a debug APK.

Using keytool with the release keystore (keystore.jks) will get me this:

 SHA1: 33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX

The debug one works fine (I have added 2 to the API console in Google)

33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX;yac.breakingpoint
7C:28:61:5B:C3:4A:5C:50:44:AA:FD:58:69:E9:70:91:XX:XX:XX:XX;yac.breakingpoint

XX is blacked out.

The keytool says it is using SHA256withRSA as signature algorithm for both, the debug and the release keystore.

What am I doing wrong?

UPDATE So I've tried a new API key, clean project and rebuild it, new keystore - still not working on release... debug is fine!

UPDATE 2 Still not found a working solution... Help me!

UPDATE 3 Allright, got it working using a signed APK with build type debug. Extracted the CERT.RSA and runned keytool -printcert -file ./CERT.SA. Got the same result as for the release build type. In release it is not working!

UPDATE 4 Here's another try I made:

It did not work.

UPDATE 5 A friend of mine tried to reproduce this issue. He has the exact same issue when working with android studio. Probably a android studio bug?

Upvotes: 31

Views: 18827

Answers (5)

You also need to add SHA-1 generated by Google App signing certificate.

Once you publish your app you can find it in Google Play Console -> Development Tools -> Release management -> App signing -> App signing certificate.

More details on this in this here: Google Places for Android API key does not work on app from Play Store

Upvotes: 1

suhaig
suhaig

Reputation: 776

You have two google_maps_api.xml files

One in this folder:

app/src/debug/res/values

Other in this folder:

app/src/release/res/values

But only the debug one contains your API key probably.

Upvotes: 76

Joel
Joel

Reputation: 838

1) Usually, you have to Clean and Rebuild the Project so it can work.

2) Make sure your build variant is on Release (Android Studio is friendly on this)

3) Also if you are debugging on your devices fully uninstall first then continue.

4) As the documentation says, make sure you have set up your manifest correctly.

Hope it helps.

Upvotes: 3

Arun Antoney
Arun Antoney

Reputation: 4382

the SHA1 currently you are using for debugging purpose .

So when you are creating a signed apk u have one kestore file. try to generate new SHA1 key with this new keaystore file.

then using this keystore file create API key for signed apk from google console.

replace debug API key already stored in manifest file with the new one.

It will work

thanks

Upvotes: 1

ArmDroid
ArmDroid

Reputation: 209

Create new project in Android Studio with Google map Activity. After project automatically creates the SHA1 in the manifest. Use this SHA1 to get MAP api key. Test your app be sure it works. And after build you app on what project.

Upvotes: 1

Related Questions