当前位置: 首页 > news >正文

android 12 第三方apk系统签名

需求:客户有两个供应商,我们是其中之一,然后客户想将我们的apk 用 另一家供应商的系统签名,安装到另一家供应商的设备上,另一家供应商提供了系统签名文件

用之前的方法 (platform.x509.pem platform.pk8客户提供的)

 java -Xmx2048m -Djava.library.path=out/host/linux-x86/lib64 -jar out/host/linux-x86/framework/signapk.jar -w platform.x509.pem platform.pk8 aa.apk aasign.apk

签名成功

安装后提示报错

adb: failed to install aaasign.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed collecting certificates for /data/app/vmdl1711630767.tmp/base.apk: Failed to collect certificates from /data/app/vmdl1711630767.tmp/base.apk: Attempt to get length of null array]

因为在android12平台这个方法不试用了

我们用另一种办法

1 把签名文件放在build/target/product/security, device/qcom/qssi/key

2 将apk放在系统中,修改makefile

3 编译版本,编译出来的apk就是使用放入的签名文件签名的apk」

前提要有一套android12的代码

然后把客户提供的系统签名文件放在build/target/product/security, device/qcom/qssi/key

然后仿照高通的apk,把要签名的apk放到vendor/qcom/proprietary/prebuilt_HY11/target/product/qssi下面

修改这个路径下的Android.mk 和prebuilt.mk

include $(CLEAR_VARS)
LOCAL_MODULE        := aa
LOCAL_MODULE_OWNER  := qcom
LOCAL_MODULE_TAGS   := optional
LOCAL_MODULE_CLASS  := APPS
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .apk
LOCAL_SRC_FILES     := ../../.././target/product/qssi/product/app/aa/aa.apk
LOCAL_MODULE_PATH   := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_PRODUCT)/app
include $(BUILD_PREBUILT)」

然后编译这个apk

然后编译出来的文件,安装就可以了

http://www.lryc.cn/news/153678.html

相关文章:

  • 【论文阅读】自动驾驶中车道检测系统的物理后门攻击
  • ArrayList、LinkedList、Collections.singletonList、Arrays.asList与ImmutableList.of
  • 恒运资本:沪指涨逾1%,金融、地产等板块走强,北向资金净买入超60亿元
  • 解决WebSocket通信:前端拿不到最后一条数据的问题
  • 【java】[maven]每次创建一个maven模块时java compiler版本就是1.6与实际版本不一致(解决本质问题)
  • GPT-5继续秘密训练中!ChatGPT开学大礼包
  • 3.2.0 终极预告!云原生支持新增 Spark on k8S 支持
  • Flutter状态管理 — 探索Flutter中的状态
  • Python中重要的条件语句教程
  • 记录一下自己对linux分区挂载的理解
  • 【机器学习】人工智能概述(文末送书)
  • 电子学会 2023年3月 青少年软件编程Python编程等级考试三级真题解析(选择题+判断题+编程题)
  • C++算法 —— 动态规划(1)斐波那契数列模型
  • Elasticsearch 对比传统数据库:深入挖掘 Elasticsearch 的优势
  • ICG-Tetrazine的合成方法和步骤-星戈瑞
  • C ++ 学习之分文件 实现类
  • vue+elementui前端rules校验缓存问题
  • 使用Vue3和Vite升级你的Vue2+Webpack项目
  • WebSocket 协议及其使用案例
  • Java应用CPU占用过高故障排除
  • 嵌入式Linux开发实操(十五):nand flash接口开发(2)
  • 作为一家游戏开发公司,有哪些经验可以分享?
  • 【100天精通Python】Day51:Python 数据分析_数据分析入门基础与Anaconda 环境搭建
  • 网络安全(黑客)自学路线
  • HTML5
  • Vue+Element-ui实现表格本地导入
  • Golang参数输入
  • 2023年8月第4周大模型荟萃
  • Kafka监控工具,LinkedIn详解
  • 如何处理 Flink 作业频繁重启问题?