I have a little problem. I have created an android api that uses google maps(mapview) on my pc with eclipse and the android emulator. Everything seems to be running fine on my pc, but when I try to install and run the same api on my laptop everything runs great, except that when I navigate to the activity using the mapView, the map shows grey with grids on the screen and not as a map. Could the problem be, that because I am running the api on a different pc, I should create a new api key to use? In another topic, I have seen that a possible solution could be, to change the version of the java compiler to the one that the program was originally compiled. I tried this too to no effect. Any help would be useful.
The Google Maps API key corresponds to your app key, when running the app locally without signing it with a keystore the app is signed by the eclipse debug key (which is different for every computer), so you need to create a new API key for every debug keystore you're using. To sum it up, you need a different API key for each development computer and off-course another API key for your release keystore.
You need to share the debug.keystore between machines for the map to show on different machines while development.
For that in Eclipse, go to Preferences -> Android -> Build and set the Custom debug keystore appropriately which u are using on your pc to view Google Maps.
Or else create a different API key for each development computer.
You will have to create a separate keystore for the release of the app.
Related
I'm doing a project with two colleagues using Android Studio, where we need to use google maps, however this problem has appeared everytime. When I compile and have the app running on my pc Android Studio everything works great and google maps works however when I send the project to either one of my colleagues when they try and run the app on their phones Google Maps only shows a grey screen, showing only the buttons but not the maps. We share the same keys generated by myself. The minSdkVersion implemented on the project covers all our phones. We have tried several things and none of them seemed to solve problem, like generating different keys for each one of them.
The only thing that seems to work is if I run the app using their phones through my computer, it's the only way that the app will show the maps.
Any help would be appreciated
The API key you've generated does not match their keystore. This key is generated with the SHA1 of your keystore. Make sure you all have the same keystore. Each install of Android Studio creates a new debug-keystore. You should make sure you use the same keystore.
My android app is using MapView and hence using the google api's.
Problem is that for testing my app I have to export apk file with my keystore , install the app in device and then run it for checking the output and it consumes a lot of time.
Is there a better way to do it using eclipse??
yes there is.
create a a 'debug maps key' using the debug.keystore located on your user folder, something like:
/Users/<username>/.android/debug.keystore
Follow the lines on this page https://developers.google.com/maps/documentation/android/mapkey#getdebugfingerprint
And register a map key for debug here
https://developers.google.com/android/maps-api-signup
This way, you'll get a debug map key which you can use for your mapview during debug.
I am working on an Android project with a few others that utilizes the Google Maps API. The problem is, currently, I am hard-coding my debug API key as an attribute on the MapView element. Since my debug key only works on my machine because only my machine has the keystore tied to that key, what's the best way that I can work with my project partners on getting Google Maps set up properly? It would be horrible if we had to manually change the hard-coded debug key each time we wanted to get it to work on our own machines.
Also, if this is necessary information, not all of us are using Eclipse.
Since my debug key only works on my machine because only my machine has the keystore tied to that key, what's the best way that I can work with my project partners on getting Google Maps set up properly?
Copy your debug.keystore file between those partners.
I am making sure that I'm using the correct key and it works on my personal Vista machine at home, but not on my Mac OSX at work.
Both are using the exact same code base for the app in dropbox, also the keystore is in dropbox so I'm sure that it is the exact same key.
Does anyone know why this is the case? I don't really want to have to use different signing keys on different computers, this would mean that I will only be allowed to compile a signed release version from 1 machine.
Thanks in advance
You can create a new debug.keystore and share that between machines.
To use it in Eclipse, go to Preferences -> Android -> Build and set the Custom debug keystore appropriately.
You will have to create a separate keystore for the release key. And then you have to figure out how you want to ensure that the right API key is used at runtime. (There are several ways to handle this, but no good way as far as I can tell.)
I hope that I can be clear; I know there are a lot of threads on the Google Map API, but I have exhausted my brain trying to fix my problem with the maps. Please tell me what I have wrong here.
I understand there are two Google Map API keys.
1) API key, for a market published app. Maps will appear once the app is published.
2) Debug API key, only works on emulator or side loaded to the phone for testing.
My partner and I are working on an app together from different PC’s. We each have our own debug api key.
1) He sends his app folder from his .android folder
2) I drop the files into folder in my .android folder
3) I import the project into eclipse
4) Replace his API key with mine.
5) Run application
He gets maps displaying on his application, but I do not. I get the gray grid.
Do I need to build a new APK of the app before the maps will appear? Does this new APK have to be created exactly like he did his?
Does the path to my APK need to be in the same folder as my keytool.debug?
How does the fingerprint relate to the APK?
Please clarify, we are stumped.
The maps API key is linked to the keystore which was used to register. You will need the debug.keystore that was used to register for the API key. Here are some quick instructions I found on how to do this.
Sharing one keystore is much easier than changing the reference to a new maps API key every time you make a revision. I'm not sure why your method isn't working though.