利用Android源代码生成的签名文件给apk签名
利用Android源代码生成的签名文件给apk签名的方法以下方法在9P10Q11R131516版本上确认有效1通过java命令给apk文件重新签名的方法需要源码下文件和几个so库out/host/linux-x86/framework/signapk.jarbuild/make/target/product/security/platform.x509.pembuild/make/target/product/security/platform.pk8若signapk.jar不存在则需要源码下make signapkError: Unable to access jarfile out/host/linux-x86/framework/signapk.jar签名方式源码根目录下source ./build/env***.sh和lunch ***后执行以下命令给app-debug.apk进行系统签名并输出签名apk为app-debug-out.apkjava-Djava.library.pathout/host/linux-x86/lib64-jar out/host/linux-x86/framework/signapk.jar build/make/target/product/security/platform.x509.pem build/make/target/product/security/platform.pk8 app-debug.apk app-debug-signed.apk2, 利用源码的签名文件给androidStudio配置源码签名参考https://blog.csdn.net/weixin_40388758/article/details/132259389https://blog.csdn.net/wang_qian_kun/article/details/117994589首先将下面的两个文件复制到当前文件夹下build/make/target/product/security/platform.x509.pem build/make/target/product/security/platform.pk8然后执行命令生成mykey.keystore签名文件openssl pkcs8-informDER-nocrypt-inplatform.pk8-outkey.pem openssl pkcs12-export-inplatform.x509.pem-inkeykey.pem-outplatform.p12-passwordpass:android-namemykey keytool-importkeystore-deststorepasspassword-destkeystoremykey.keystore-srckeystoreplatform.p12-srcstoretypePKCS12-srcstorepassandroid在AndroidStudio工程的app/build.gradle.kts文件里配置签名信息app/build.gradle:android{signingConfigs{getByName(debug){storeFilefile(/home/签名文件路径/mykey.keystore)storePasswordpasswordkeyAliasmykeykeyPasswordpassword}}}或者通过AndroidStudio提供的Project StructureUI界面配置3, 查看apk签名版本方式V1,V2,V3,V4apksigner verify-v~/temp/app-debug-signed.apk 输出为VerifiesVerifiedusing v1 scheme(JARsigning):falseVerifiedusing v2 scheme(APKSignatureSchemev2):falseVerifiedusing v3 scheme(APKSignatureSchemev3):trueVerifiedusing v4 scheme(APKSignatureSchemev4):falseVerifiedforSourceStamp:falseNumberof signers:1