I created a signed APK with Android Studio, and I added to Google Developer console and Facebook console my SHA1 fingerprint and the relative api keys in my app. Everything works well if I upload my signed apk via USB, after installing it maps API and facebook api works well. If I upload the same apk to the Play Store, when I try to login with Facebook, it says “invalid key hash. The key hash blablabla doesn’t match with any stored..”.
So if I log without facebook, I can’t even get my google maps; this leads me to think that the apk loaded on the play store changes his fingerprint or some stuff like that.
I checked all the stuff on Android Developers and Stackoverflow, but I can’t make it work, because the strange thing is that this signed release apk works well until I load it on the Play Store.
Question posted in Facebook API
The official documentation for the Facebook APIs can be found here.
The official documentation for the Facebook APIs can be found here.
6
Answers
I finally solved, the problem was probably that the file google_maps_api.xml provided by the api was not loaded in the release, so i
i did like that:
and then in my AndroidManifest
Reference: https://stackoverflow.com/a/33917692/3235560
then i registered 2 different keys each with the right sha1 fingerprint, one debug and the other given by Google Play console (not the upload certificate, but the other one generated by Google).
Very Very thanks to Zuhad and Andy Developer for inspiration.
The debug and release build types of your application are signed with two different keys.
You need to register both keys in the Google Maps and Facebook for them to allow access to their services
Yes , Obviously the map will not load in signed APK.
Solution:
When you generate API key in Google API console you need to restrict the key with SHA key
But After generating Signed APk you need to take release mode SHA key and add in API console for the API
I have attached Image, Have a look
hope it helps.
For Facebook to generate hash key use the below code:
Once you receive the hashcode, do paste the same in Facebook developer console and move ahead
hope it helps:)
Here is the answer for why you can’t see the Google Map.
I recently Upload the APK on Google Play store and I faced the same issue after checking the Play Console I found the solution for this problem.
Their is no problem with your key but the problem is with your SHA-1. You signed your APK with your SHA-1 that is fine and then upload the APK it also fine.
But as per the new update for Play Console when you signed your APK with SHA-1 and upload the APK it only signed by you but as per the new update it is also signed by Google Play for more security. Have a look here some part of Google Play section:
You can refer Documentation here.
Now, The Answer of your question is After successfully upload the APK you can see that in the section with Two SHA-1 the 1st SHA-1 is Google created its own and 2nd SHA-1 is its yours.
So just copy the Google SHA-1 and paste it to your console where you generate the Google Map API Key.
With inspiration from @Andy Developer, I could display the map after my app was uploaded to Google Play. These were the steps: