信用卡在哪些网站上做推广,广东二次感染最新消息,网站引导页是什么问题,wordpress 视频付费插件从Android源码中生成系统签名文件 文章目录 从Android源码中生成系统签名文件1、在linux中打开编译android源码目录。2、cd到签名文件位置3、生成 platform.pem文件4、生成 platform.p12 文件5、生成 最终的 platform.jks系统签名文件6、把platform.jks 放到Studio 项目app 根目…从Android源码中生成系统签名文件 文章目录 从Android源码中生成系统签名文件1、在linux中打开编译android源码目录。2、cd到签名文件位置3、生成 platform.pem文件4、生成 platform.p12 文件5、生成 最终的 platform.jks系统签名文件6、把platform.jks 放到Studio 项目app 根目录下7、在对应需要签名的module默认是app的build.gradle中添加如下代码其他在非源码环境生成签名文件会报错如果没执行source环境可能也会报错无法生成签名文件 本文介绍如何从Android源码环境中生成签名文件。 注意需要源码环境哦window环境是会报错的
生成和使用系统签名文件jks主要有下面几步
1、在linux中打开编译android源码目录。
2、cd到签名文件位置 cd build/target/product/security/
3、生成 platform.pem文件
执行如下命令
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
生成 platform.pem文件.
4、生成 platform.p12 文件
执行如下命令
openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:skg202302 -name skg
生成 platform.p12 文件其中huld 为 skg 名app添加签名要用到skg202302 为密码。
5、生成 最终的 platform.jks系统签名文件
执行如下命令 keytool -importkeystore -deststorepass skg202302 -destkeystore platform.jks -srckeystore platform.p12 -srcstoretype PKCS12 -srcstorepass skg202302
生成 platform.jks app打签名最终用到的文件其中-deststorepass skg202302 设置的是这个签名的密码上面指令中的-src*的其他参数都是从前面两个指令中生成的。
正常成功执行的过程如下图所示
对Android Studio 来说上面的信息生成的签名文件是包含如下信息的 storeFile file(./platform.jks) //签名文件路径根目录storePassword skg202302 //签名的密码keyAlias skg //账户名称keyPassword skg202302 //账户密码6、把platform.jks 放到Studio 项目app 根目录下
7、在对应需要签名的module默认是app的build.gradle中添加如下代码
android {compileSdkVersion 30buildToolsVersion 30.0.0compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}
。。。//证书信息在这里配置signingConfigs {main {storeFile file(./platform.jks) //签名文件路径根目录storePassword skg202302keyAlias skgkeyPassword skg202302}}buildTypes {release {minifyEnabled falsesigningConfig signingConfigs.main //添加这一行proguardFiles getDefaultProguardFile(proguard-android.txt), proguard-rules.pro}debug {minifyEnabled falsesigningConfig signingConfigs.main //添加这一行proguardFiles getDefaultProguardFile(proguard-android.txt), proguard-rules.pro}}}
其他
在非源码环境生成签名文件会报错
生成签名文件的操作需要在linux 源码环境下如果在window执行需要配置openssl环境最后一步会报错不同版本的openssl可能出现的错误不同。
E:\code\securitykeytool -importkeystore -deststorepass skg202302 -destkeystore platform.jks -srckeystore platform.p12 -srcstoretype PKCS12 -srcstorepass skg202302 keytool 错误: java.io.IOException: parseAlgParameters failed: ObjectIdentifier() – data isn’t an object ID (tag 48)
如果没执行source环境可能也会报错 程序 keytool 已包含在下列软件包中* gcj-4.8-jre-headless* openjdk-7-jre-headless* gcj-4.6-jre-headless* openjdk-6-jre-headless
请要求管理员安装其中的一个
这时输入java -version /which java 都是没用的source之后就不会有这个问题
无法生成签名文件
有些系统环境的签名文件已经被修改、加密是无法生成签名文件的这个要问供应商才知道了。 比如我之前接触的华为手机源码Android9和之前是可以的之后的源码已经无法生成签名文件的。