Reputation: 908
I know this is a common question and usually the solution is to generate a separate key for release. I've done it several times and my API key in developers console contains two different SHA1-fingerprints: one for debug from AndroidStudio and on for release from my own keystore. I have signed the app with the same keystore and enabled Google Maps Android API v2 in the console. But still the maps activity shows just the white screen with 'Google' in the left bottom corner.
Are there any suggestions how to solve the problem?
Upvotes: 31
Views: 20756
Reputation: 83
this happend to me because we need two google maps api keys one for the debug and another one for the release, you can check in :
C:\Users\username\AndroidStudioProjects\yourapp\app\src\ debug \res\values
and you’ll find an xml with your api key like:
AIza...etc
but if you check here:
C:\Users\username\AndroidStudioProjects\yourapp\app\src\ release \res\values
you will find an xml but without api key inside like:
<string name="google_maps_key" templateMergeStrategy="preserve"
translatable="false">YOUR_KEY_HERE</string>
Upvotes: 0
Reputation: 21
I solved it by looking at https://play.google.com/console in the left menu configuration then integrity of the app and copy the SHA1 of the upload key certificate that is below the SHA1 Certificate of the app signing key and add it in the same api key of https://console.cloud.google.com/. This way I didn't have to make changes to the apk.
If it doesn't work for you add both and try.
Upvotes: 1
Reputation: 1
It's too late to answer but may be helpful for others if they phase the same issue.
If adding key in the release did not work then please check your SHA key in your jks file and add the same key in google play google api console
To get released SHA open your terminal and type
Asad-MacBook-Air:~ asad$ keytool -list -v -keystore /your/path/keystore.jks
and then check SHA, it should be the same as it is used in google api console.
Upvotes: 0
Reputation: 4383
If you chose Google Play App Signing then your App's SHA-1
will be different one when it will be released.
Because Google remove your uploaded certificate and then sign the App with a new one,
So you have to know the new SHA-1
key.
(You don't have to follow the log for release and track the new SHA-1
generated)
You can compare the 2 SHA-1
keys.
Upvotes: 25
Reputation: 1384
you are using a version of sha1. you need to again generate SHA1 using command prompt after making you apk signed.
Steps to regenerate SHA1 is go to cmd and give the command like below:
C:\Program Files\Java\jre1.8.0_91\bin>keytool -list -v -keystore
"C:\Your key store path\keystores\android.jks"
1)go to your java in program file open java version like jre1.8.0
2)open bin folder and run command like above follwed by your key store path that you have generated when you generated the signed apk after running this command on cmd you need to provide password of signed app and your SHA1 will be gerarated.
3)copy the sha1 and paste into console.developer with your package name within your api key.
Upvotes: 0
Reputation: 133
I did a lot of things to fix these but any solution not fix my problem to fix these issue I did these things
You should go to use the path of bin folder of java from c drive because keystore tool is inside bin folder so suppose your file is like C:\Program Files\Java\jdk1.8.0_11\bin so you should follow this path to your android studio terminal change the path to C:\Program Files\Java\jdk1.8.0_11\bin and then type this command:
keytool -list -v -keystore "/Users/NT/Desktop/generalkey.jks"(adress of your keystore file)
Now by doing these you will get the sha key copy that key
Upvotes: 0
Reputation: 43322
It sounds like you only have the API key entered in the debug google_maps_api.xml. Also, it sounds like you're using the same API key for debug and release, but you still need to enter it in the google_maps_api.xml under the release folder as well as the one in the debug folder.
It's a little confusing, because when the project is in Android view, you can only see the debug file (although it should have (debug)
in parenthesis next to it in that view).
In order to modify the release version, switch to Project view by using the dropdown in the upper left of the Project Explorer. Then, expand app/src/
, and you will see subfolders debug
and release
. Under there, you should see two separate google_maps_api.xml files under debug/res/values
and release/res/values
.
Make sure that the API key is populated in the google_maps_api.xml file under the release/res/values
folder, since this is the one that will be used for the signed release apk.
Upvotes: 77