???????????????Android?????????????ζ????????????Google?????????????????????????????????ú???????????????????Щ???????????????????????????????????????
??????APK????л????????
??????÷???
????keytool -list -printcert -jarfile your_apk_file
??????????
???????Owner??Issuer?????
?????????fingerprints????md5??sha1???
?????????Ч??????
???????Ч??
????16:29 $ keytool -list -printcert -jarfile akoi_1.2.apk
????Signer #1:
????Signature:
????Owner: CN=Andrew Wallace?? OU=droidyue.com?? O=droidyue.com?? L=Beijing?? ST=Beijing?? C=86
????Issuer: CN=Andrew Wallace?? OU=droidyue.com?? O=droidyue.com?? L=Beijing?? ST=Beijing?? C=86
????Serial number: 11a8a4a3
????Valid from: Tue Feb 10 18:07:43 CST 2015 until: Sun Jun 13 18:07:43 CST 3013
????Certificate fingerprints:
????MD5:  46:C5:BE:EF:B5:C9:00:E1:FA:42:50:50:57:54:CA:15
????SHA1: C1:14:5D:0A:C2:BF:F6:06:43:20:AE:2C:07:12:97:58:C2:1B:39:D1
????SHA256: 0E:88:7D:C2:4C:D6:84:A7:58:D4:24:1E:9D:38:F9:05:98:1E:B2:A2:D7:CB:0F:81:74:60:5B:38:89:FF:21:1C
????Signature algorithm name: SHA256withRSA
????Version: 3
?????????????л????????
??????÷???
????keytool -list -v -keystore your_kestore_file
?????????????????к???????????????????????????й?????????????
??????????
???????Owner??Issuer?????
?????????fingerprints????md5??sha1???
?????????Ч??????
???????Ч??
????Keystore type: JKS
????Keystore provider: SUN
????Your keystore contains 1 entry
????Alias name: droidyue.com
????Creation date: Feb 10?? 2015
????Entry type: PrivateKeyEntry
????Certificate chain length: 1
????Certificate[1]:
????Owner: CN=Andrew Wallace?? OU=droidyue.com?? O=droidyue.com?? L=Beijing?? ST=Beijing?? C=86
????Issuer: CN=Andrew Wallace?? OU=droidyue.com?? O=droidyue.com?? L=Beijing?? ST=Beijing?? C=86
????Serial number: 11a8a4a3
????Valid from: Tue Feb 10 18:07:43 CST 2015 until: Sun Jun 13 18:07:43 CST 3013
????Certificate fingerprints:
????MD5:  46:C5:BE:EF:B5:C9:00:E1:FA:42:50:50:57:54:CA:15
????SHA1: C1:14:5D:0A:C2:BF:F6:06:43:20:AE:2C:07:12:97:58:C2:1B:39:D1
????SHA256: 0E:88:7D:C2:4C:D6:84:A7:58:D4:24:1E:9D:38:F9:05:98:1E:B2:A2:D7:CB:0F:81:74:60:5B:38:89:FF:21:1C
????Signature algorithm name: SHA256withRSA
????Version: 3
???????????APK
????????????????£????????apk???и????????
???????
????signapk.sh
??????????
??????÷???
????bash signapk.sh your_apk_file your_keystore_file keystore_pass keystore_alias
???????Ч??
????16:57 $ bash signapk.sh weixin6313android740.apk ~/Documents/baidu_disk/??????????/droidapp/mykiki 123456 droidyue.com
????param1 weixin6313android740.apk
????param2 /Users/androidyue/Documents/droidapp/mykiki
????param3 123456
????param4 droidyue.com
????deleting: META-INF/MANIFEST.MF
????deleting: META-INF/DROIDYUE.SF
????deleting: META-INF/DROIDYUE.RSA
????adding: META-INF/MANIFEST.MF
????adding: META-INF/DROIDYUE.SF
????adding: META-INF/DROIDYUE.RSA
????......
????Verification succesful
????????????????????????????????????????????????signed_?????????weixin6313android740.apk?????????????????????????signed_weixin6313android740.apk
????Gradle build???????APK
????????????gradle build?????????????apk???????build.gradle?????????
????android {
????signingConfigs {
????release {
????storeFile file("myrelease.keystore")
????storePassword "********"
????keyAlias "******"
????keyPassword "******"
????}
????}
????buildTypes {
????release {
????signingConfig signingConfigs.release
????}
????}
????}