`

Android apk签名以及真机上gmap api key相关

阅读更多

Apk签名首先要有一个keystore的签名用的文件。


keystore是由jdk自带的工具keytool生成的.

开始->运行->cmd->cd 到JDK目录  C:\Program Files\Java\jdk1.6.0_10\bin

(当然你也可以将jdk bin path添加到环境变量中,这样在任何地方都可以使用keytool了)
然后输入:keytool -genkey -alias whse.keystore -keyalg RSA -validity 20000 -keystore whse.keystore
-alias 后跟的是别名这里是 whse.keystore
-keyalg 是加密方式这里是 RSA
-validity 是有效期 这里是 20000
-keystore 就是要生成的keystore的名称 这里是 asaiAndroid.keystore
然后按回车
按回车后首先会提示你输入密码:这个在签名时要用的要记住了哦。
然后会再确认你的密码。
之后会依次叫你输入 姓名,组织单位,组织名称,城市区域,省份名称,国家代码等。

 

运行完可以在 C:\Program Files\Java\jdk1.6.0_10\bin 里找到刚才生产的keyStore文件

接下来开始给apk签名
使用的命令是JDK bin下面的jarsigner
好现在可以在刚才的命令行后继续运行以下命令给APK签名:
jarsigner -verbose -keystore whse.keystore -signedjar whse_signed.apk whse.apk whse.keystore
-keystore:keystore 的名称
whse_signed.apk  是签完名后的APK
whse.apk 是签名前的apk
然后按回车:会要求输入刚才设置的密码,输入后按回车就开始签名了。

 

注意 :有时会签名失败,因为你有可能使用的是eclipse build出来的apk默认是sign过的,所以请重新使用unsign的apk.

        右键project -> Android Tools -> Export unsigned application package...

 

运行成功后在 C:\Program Files\Java\jdk1.6.0_10\bin 目录下会多出一个被签名的apk文件

 

-----------------------------------------------------分割线--------------------------------------------------------------

 

接下来我们看看如何为真机申请Gmap API key.

上面我们已经申请过了private keystore,叫whse.keystore,我们可以使用它来申请API key。

同样打开cmd, cd到你keystore所在的path,

输入

keytool -list -alias whse.keystore -keystore whse.keystore -storepass xxxxxx -keypass xxxxxx     "xxxxxx"代表你的keystore密码

 

这时你会得到Fingerprint:

92:AD:BE:8B:CA:AD:14:2B:B4:B1:F7:78:95:96:80:00

打开http://code.google.com/intl/zh-CN/android/maps-api-signup.html

将fingerprint输入,generate API key

 

Thank you for signing up for an Android Maps API key!

Your key is:

086moYPdTBbuMl1AUpBxeXcTtFHR-kjai7xeZgA

This key is good for all apps signed with your certificate whose fingerprint is:

92:AD:BE:8B:CA:AD:14:2B:B4:B1:F7:78:95:96:80:00

Here is an example xml layout to get you started on your way to mapping glory:

              <com.google.android.maps.MapView
                 android:layout_width="fill_parent"
                 android:layout_height="fill_parent"
                 android:apiKey="086moYPdTBbuMl1AUpBxeXcTtFHR-kjai7xeZgA"
                 />
            

将API key填入到mapView中,如上。

 

最后通过eclipse生成signed apk即可

右键project -> Android Tools -> Export Signed Application Package...

(生成signed apk时要求输入keystore的密码)

 

将生成的apk安装到real target上就可以使用Gmap了。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics