I am trying to follow the Android mapping tutorial and got to this part where I had to get an API key.
I have found my debug.keystore
but there does not appear to be a keytool
application in the directory:
C:\Documents and Settings\tward\\.android>ls
adb_usb.ini avd debug.keystore repositories.cfg androidtool.cfg ddms.cfg default.keyset
There is also no keytool
in this directory:
C:\Android\android-sdk-windows\tools>ls
AdbWinApi.dll apkbuilder.bat etc1tool.exe mksdcard.exe
AdbWinUsbApi.dll ddms.bat fastboot.exe source.properties
Jet dmtracedump.exe hierarchyviewer.bat sqlite3.exe
NOTICE.txt draw9patch.bat hprof-conv.exe traceview.bat
adb.exe emulator.exe layoutopt.bat zipalign.exe
android.bat emulator_NOTICE.txt lib
I am using Eclipse as my editor and believe that I have downloaded all the latest SDK.
What am I doing wrong?
One thing that wasn't mentioned here (but kept me from running keytool altogether) was that you need to run the Command Prompt as Administrator.
Just wanted to share it...
Okay, so this post is from six months ago, but I thought I would add some info here for people who are confused about the whole API key/MD5 fingerprint business. It took me a while to figure out, so I assume others have had trouble with it too (unless I'm just that dull).
These directions are for Windows XP, but I imagine it is similar for other versions of Windows. It appears Mac and Linux users have an easier time with this so I won't address them.
So in order to use mapviews in your Android apps, Google wants to check in with them so you can sign off on an Android Maps APIs Terms Of Service agreement. I think they don't want you to make any turn-by-turn GPS apps to compete with theirs or something. I didn't really read it. Oops.
So go to http://code.google.com/android/maps-api-signup.html and check it out. They want you to check the "I have read and agree with the terms and conditions" box and enter your certificate's MD5 fingerprint. Wtf is that, you might say. I don't know, but just do what I say and your Android app doesn't get hurt.
Go to Start>Run and type cmd to open up a command prompt. You need to navigate to the directory with the keytool.exe file, which might be in a slightly different place depending on which version JDK you have installed. Mine is in
C:\Program Files\Java\jdk1.6.0_21\bin
but try browsing to the Java folder and see what version you have and change the path accordingly.After navigating to C:\Program Files\Java\<"your JDK version here">\bin in the command prompt, type
with the quotes. Of course <"your user name here"> would be your own Windows username.
(If you are having trouble finding this path and you are using Eclipse, you can check Window>preferences>Android>Build and check out the "Default Debug keystore")
Press enter and it will prompt you for a password. Just press enter. And voila, at the bottom is your MD5 fingerprint. Type your fingerprint into the text box at the Android Maps API Signup page and hit Generate API Key.
And there's your key in all its glory, with a handy sample xml layout with your key entered for you to copy and paste.
This seemed far harder to find than it needs to be for OSX. Too many conflicting posts
For MAC OSX Mavericks Java JDK 7, follow these steps to locate
keytool
:Firstly make sure to install
Java JDK
:http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html
Then type this into command prompt:
/usr/libexec/java_home -v 1.7
it will spit out something like:
keytool
is located in the same directory asjavac
. ie:From
bin
directory you can use thekeytool
.Ok I did this in Windows 7 32-bit system.
step 1: go to - C:\Program Files\Java\jdk1.6.0_26\bin - and run jarsigner.exe first ( double click)
step2: locate debug.keystore, in my case it was - C:\Users\MyPcName\.android
step3: open command prompt and go to dir - C:\Program Files\Java\jdk1.6.0_26\bin and give the following command: keytool -list -keystore "C:\Users\MyPcName\.android\debug.keystore"
step4: it will ask for Keystore password now. ( which I am figuring out... :-? )
update: OK in my case password was ´ android ´. - (I am using Eclipse for android, so I found it here) Follow the steps in eclipse: Windows>preferences>android>build>..
( Look in `default Debug Keystore´ field.)
Command to change the keystore password (look here): Keystore change passwords
keytool
comes with the Java SDK. You should find it in the directory that containsjavac
, etc.If you're using Android Studio for Windows to create a release keystore and signed .apk, just follow these steps:
1) Build > Generate Signed APK
2) Choose "Create New...", choose the path to the keystore, and enter all the required data
3) After your keystore (your_keystore_name.jks) has been created, you will then use it to create your first signed apk at a destination of your choosing
I haven't seen a need to use the command tool if you have an IDE like Android Studio.