来自: Android梦想特工队
作者: Aaron
主页: http://www.wxtlife.com/
原文连接:http://www.wxtlife.com/2016/07/11/use-system-key-create-keystore/

首先找到系统对应系统签名keys的位置,一般在源码的android\build\target\product\security,此文件夹下面有4个标准的key。

  • testkey -- a generic key for packages that do not otherwise specify a key.
  • platform -- a test key for packages that are part of the core platform.
  • shared -- a test key for things that are shared in the home/contacts process.
  • media -- a test key for packages that are part of the media/download system.

注:我们需要制作的keystore需要用到platform的key。

直接签名和制作keystore都是需要使用platform.x509.pemplatform.pk8这两个文件。

直接给应用签名

直接签名还需要一个signapk.jar文件,此文件位置在out/host/linux-x86/framework/signapk.jar 在利用上面文件签名,命令如下:
java -jar signapk.jar platform.x509.pem platform.pk8 app.apk app_signed.apk

app_signed.apk为经过系统签名的apk了。

制作keystore

使用上面两个文件来生成keysotre。按照如下步骤进行生成:

  1. 生成platform.pem
    openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
  2. 生成platform.pk12
    openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name androiddebugkey
  3. 生成keystore文件
    keytool -importkeystore -deststorepass android -destkeystore ./platform.keystore -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepass android

注:有的生成的为platform.jks,可以直接改为.keystore后缀,不影响使用的。基于以上我们就能够制作出keystore。

参考链接:
http://elsila.blog.163.com/blog/static/173197158201211172281242/
https://developer.android.com/studio/publish/app-signing.html
http://jmlinnik.blogspot.com/2011/12/keystores.html

更多相关文章

  1. Android(安卓)MediaScanner.cpp 源代码解析
  2. Android读取Assert文件夹下txt文本并变为String的方法
  3. buildinfo.sh简要分析
  4. php脚本生成google play url的下载链接,下载apk并自动反编译后获
  5. Android(安卓)下使用tcpdump 抓包工具
  6. Android(安卓)apk应用程序签名
  7. 【Android】Android中使用JNI调用底层C++代码
  8. (Android(安卓)studio)关于drawable文件夹的问题
  9. 在 Android(安卓)11 上使用第三方 SDK 向其他应用分享文件的注意

随机推荐

  1. Android(安卓)蓝牙低功耗Ble Gatt浅谈
  2. Android自定义View实战---圆盘温度计
  3. [置顶] 解决android某些应用开发某些类无
  4. Android(安卓)App集成支付宝
  5. 在 Ubuntu 下使用 Android(安卓)NDK r4b
  6. 3. 编写的第一个android HelloWorld程序
  7. 【Android个人理解(一)】通过Looper与Handl
  8. Android面试真题,了解一下?
  9. android缓存设计
  10. Gradle Android最新自动化编译脚本教程(