Getting Android Google Map v2 working in release version by generating SHA1 fingerprint for API key

耗尽温柔 提交于 2019-11-29 10:44:26

1) As specified in a couple other Stack Overflow posts, you can use the same Google API key for both your debug and release versions, but you have to supply the fingerprints of your debug and release keys in the Google Developers Console.

  • Log into Google Developers Console https://console.developers.google.com
  • Choose your appropriate Project
  • On left side, choose Credentials under "APIs & auth"
  • Assuming you already have an API Key generated for Android applications, you should already see your application listed as an "allowed application" with its debug fingerprint. Click "Edit allowed Android applications".
  • You will want to add another line for your application, but with its release fingerprint. To get that...

2) Google mentions in that dialog that you need to run

keytool -list -v -keystore mystore.keystore

But by clicking "Learn more" and going a little further, what you really want to run is

keytool -exportcert -alias MY_RELEASE_KEY_ALIAS -keystore MY_FULL_PATH_TO_RELEASE_KEYSTORE_FILE -list -v

Then you'll be asked for your keystore password. One piece that isn't mentioned in the docs is where the keytool program is. Its in your JDK bin folder. So on Windows, something like C:\Program Files\Java\jdk1.8.0_20\bin

3) After I opened a console window in the Java bin folder and ran the keytool as above, I was getting an error that said "keystore file exists but is empty". Eventually I realized that when specifying the full path to my release keystore file, I had only specified the folder name but forgot to include the actual file name, even though there was only one file in the folder. So MY_FULL_PATH_TO_RELEASE_KEYSTORE_FILE above should include the .keystore file name

After all that, you will be finally be provided with several fingerprints, including the SHA1. You can copy that, and go back and paste it as a new line in the allowed Android Applications, with your package name on the end separated by a semi-colon, just like the debug one.

Follow the instructions given here. After creating your project in Google Developers Console, select APIs, you will be prompted with a section of Popular APIs, select Google Maps Android API. Press enable API.(the image below is showing the steps in the new version of the console)

If you're still using the old console, enable the API, by selecting Services, then switch the button ON:

Note: You don't need to enable the API for the debug version!

If you're map is still not showing try regenerating the key!

(new version)

(old version)

Enter the new API key then Sync Project with Gradle Files!
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!