Android给第三方应用添加系统签名的两种方式

第一种:使用keytool-importkeypair生成keystore文件,后缀名为.jks,放到android studio中

1、  下载keytool-importkeypair 地址:https://github.com/getfatday/keytool-importkeypair

2、  在源码中拷贝 platform.x509.pem、platform.pk8(位于../build/target/product/security)

不同厂商的位置不同,需要正确路径下的platform.x509.pem、platform.pk8,否则签名会失败。

3、  在linux平台下新建一个文件夹,吧 keytool-importkeypairplatform.x509.pem、platform.pk8 拷贝到这个文件夹下,使用以下命令:

./keytool-importkeypair-k demo.jks -p 123456 -pk8 platform.pk8 -cert platform.x509.pem -alias demo

其中demo.jks是生成的签名文件123456是密码demo是别名,然后再用命令

keytool-importkeystore -srckeystore demo.jks -destkeystore demo_signed.jks-deststoretype pkcs12  

迁移到行业标准格式即可,这样我们就可以在android studio 中使用我们的系统签名文件了

4、  打开android studio 在项目的根目录新建一个文件夹

然后在app的build.gradle的android闭包中添加如下代码

android{    compileSdkVersion 25    buildToolsVersion "26.0.2"    defaultConfig {        applicationId"com.honeywell.applock"        minSdkVersion 19        targetSdkVersion 25    }    signingConfigs {       release {            storeFile file('../platformSign/demo_signed.jks')            storePassword '123456'            keyAlias 'demo'            keyPassword'123456'       }       debug {            storeFile file("../platformSign/demo_signed.jks")            storePassword '123456'            keyAlias 'demo'            keyPassword'123456'       }    }

然后运行项目即可。也可以用下面这种方式生成签名的apk

第二种:用signapk.jar 直接签名apk

1、  找到源码中的signapk.jar包(./out/host/linux-x86/framework/signapk.jar

或是./prebuilts/sdk/tools/lib/signapk.jar)

2、  在源码中拷贝 platform.x509.pem、platform.pk8(位于../build/target/product/security)

不同厂商的位置不同,需要正确路径下的platform.x509.pem、platform.pk8,否则签名会失败。

3、   把signapk.jar  platform.x509.pem、platform.pk8和需要签名的apk放在一个文件下,使用命令:

java-Xmx512m -jar signapk.jar -w platform.x509.pem platform.pk8 demo.apkdemo_Signed.apk

4、  或者直接把apk拷贝到源码目录,使用命令 :

java-Xmx2048m -Djava.library.path="out/host/linux-x86/lib64" -jarout/host/linux-x86/framework/signapk.jar -w build/target/product/security/platform.x509.pem     build/target/product/security/platform.pk8     demo.apk demo_Signed.apk

进行签名即可。(platform.x509.pem、platform.pk8的路径需要和平台的一致,不一定是以上路径)

更多相关文章

  1. Android app:开机自动启动app demo 源码
  2. android获取各种系统路径的方法
  3. Android笔记1——Android SDK自带的工具和命令
  4. Android Parcelable 源码解析
  5. Android volley的源码实现原理
  6. Android网易有道词典案例源码分享

随机推荐

  1. Android中的dispatchTouchEvent()、onInt
  2. android ListView 属性
  3. Android(安卓)设置没有 actionBar的 样式
  4. Android(安卓)studio修改打包后的apk的名
  5. 安卓9.0 http请求数据失败解决办法
  6. Android发送短信方法实例详解
  7. Android横向智能刷新框架-SmartRefreshHo
  8. Failure [INSTALL_FAILED_TEST_ONLY: ins
  9. 安卓巴士Android开发神贴整理
  10. android底层开发