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:
The debug one works fine (I have added 2 to the API console in Google)
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?
So I’ve tried a new API key, clean project and rebuild it, new keystore – still not working on release… debug is fine!
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!
Here’s another try I made:
- Created a new GIT Repository, commited to it.
/buildfolders are not beeing commited since they are in the
- Created a new API key in the API console and added only the release SHA1 key to it.
- Added that API key to the app and made a full clean with rebuild.
- Generated a new signed APK file
It did not work.
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?
You have two google_maps_api.xml files
One in this folder:
Other in this folder:
But only the debug one contains your API key probably.
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.
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.
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
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