Android系统证书 platform.x509.pem platform.pk8转换为.keystore文件

我们在进行Android开发的时候,如果开发的是系统应用,都需要系统的签名才能正常运行。而系统应用一般是把代码统一放到系统代码库中跟随系统一起编译。而如果我们想用Android Studio单独开发某个应用而使用系统签名的时候,有两种开发的方式,一种是编译完成后,使用SignApk.jar来进行签名,另外一种是把系统的 platform.x509.pemplatform.pk8 转换成为Android Studio常用的 .keystore文件,编译时候自动签名。

Android系统签名证书的目录是“build/target/product/security”。

 

SignApk.jar签名


命令行中使用 SignApk.jar签名的方式如下:

 

1

$java -jar SignApk.jar platform.x509.pem platform.pk8Application.apk Application_signed.apk

 

转换为 .keystore文件


使用(keytool-importkeypair+linux环境的命令行 )进行转换,简要步骤如下:

1,Android系统证书 platform.x509.pem platform.pk8转换为.keystore文件_第1张图片

 

如上图,将系统证书 platform.x509.pem platform.pk8 放在keytool-importkeypair 目录下,接着打开Linux(或类似Linux环境的)命令行去执行命令:

linux环境命令行可用MinGw(百度自行搜索),也可用git环境的命令行,我用的就是Git环境的命令行,如下图:

Android系统证书 platform.x509.pem platform.pk8转换为.keystore文件_第2张图片

 

./keytool-importkeypair -k ./platform.keystore -p android -pk8 platform.pk8 -cert platform.x509.pem -alias platform

 

-k 表示要生成的 keystore 文件的名字,这里命名为 platform.keystore
-p 表示要生成的 keystore 的密码,这里是 android
-pk8 表示要导入的 platform.pk8 文件
-cert 表示要导入的platform.x509.pem
-alias 表示给生成的 platform.keystore 取一个别名,这是命名为 platform

 

输入命令后,在目录下platform.keystore文件就生成了。

 

Android系统证书 platform.x509.pem platform.pk8转换为.keystore文件_第3张图片

 

这个文件就是android studio需要的签名文件,稍后在build.gradle中进行配置。
我把platform.keystore文件放到项目中新建的keystore目录下了。AS中gradle配置如下:

Android系统证书 platform.x509.pem platform.pk8转换为.keystore文件_第4张图片

 

你可能感兴趣的:(Android,Studio)