Android App系统签名

embedded/2024/10/18 8:31:06/

1.在AndroidManifest中添加

android:sharedUserId="android.uid.system"

2.获取系统签名
把以下所有文件放入同一个文件夹命名为sign
在Android系统源码中的\build\target\product\security目录下找到platform.x509.pem 和 platform.pk8两个文件;
在out/host/Linux-x86/framework目录下找到signapk.jar文件
找到 libconscrypt_openjdk_jni库
若是mac系统拷贝
prebuilts/sdk/tools/darwin/lib64/libconscrypt_openjdk_jni.dylib
若是Linux系统拷贝
prebuilts/sdk/tools/linux/lib64/libconscrypt_openjdk_jni.so
需要进行系统签名的app.apk
PS:有的系统在android源代码里是编译产生的,
在out/host/linux-x86/lib/ 或者 out/host/linux-x86/lib64/目录下面
3.进入sign目录执行以下命令即可完成签名即可

java -Djava.library.path=. -jar signapk.jar platform.x509.pem platform.pk8 app.apk app_sign.apk

以上即可完成普通app获得系统权限
若是需要在Android Studio使用要完成以下步骤

4.通过platform.x509.pem platform.pk8 生成签名keystore,可在github上下载脚本
https://github.com/getfatday/keytool-importkeypair
放入platform.x509.pem platform.pk8所在目录
执行以下命令


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

5.在Android studio中使用
 

signingConfigs {sginconfig {keyAlias 'platform'keyPassword 'android'storeFile file('/Users/macbook/.android/debug.keystore')storePassword 'android'}}buildTypes {release {signingConfig signingConfigs.sginconfigminifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}debug {signingConfig signingConfigs.sginconfigminifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}


http://www.ppmy.cn/embedded/126373.html

相关文章

element-plus 自定义列表(非table)实现分页功能

自定义列表实现分页功能增&#xff0c;删&#xff0c;改功能点击图片放大功能 template模块代码如下&#xff1a; <template> <div class"booth_manager"> <el-affix :offset"0"> <div class"sticky_top"> <div clas…

【分布式微服务云原生】探索MySQL的高级特性:主从复制、读写分离与分库分表

探索MySQL的高级特性&#xff1a;主从复制、读写分离与分库分表 摘要&#xff1a; 本文深入探讨了MySQL数据库的高级特性&#xff0c;包括主从复制、读写分离和分库分表的实现方案及其优缺点。你将了解到这些技术背后的原理&#xff0c;如何在你的项目中实现它们&#xff0c;以…

【C语言】深入理解指针(二)(上)

本篇博客将讲解的知识&#xff1a; &#xff08;1&#xff09;指针的使用和传址调用 &#xff08;2&#xff09;数组名的理解 1、指针的使用和传址调用 &#xff08;1&#xff09;strlen 的模拟实现 库函数strlen的功能是求字符串的长度&#xff0c;统计的是字符串中‘\0’之…

黑龙江APP等保测评:提升网络安全,守护用户数据

在数字化时代&#xff0c;移动应用程序&#xff08;APP&#xff09;已成为人们日常生活中不可或缺的一部分。然而&#xff0c;随着APP使用的普及&#xff0c;网络安全问题也日益凸显。特别是在黑龙江省&#xff0c;随着信息技术的快速发展&#xff0c;确保APP的安全性和合规性显…

UI自动化测试示例:python+pytest+selenium+allure

重点应用是封装、参数化&#xff1a; 比如在lib文件夹下&#xff0c;要存储封装好的方法和必要的环境变量&#xff08;指网址等&#xff09; 1.cfg.py:封装网址和对应的页面 SMP_ADDRESS http://127.0.0.1:8234SMP_URL_LOGIN f{SMP_ADDRESS}/login.html SMP_URL_DE…

中阳:引领未来投资的创新金融平台

在当前快速变化的金融环境中&#xff0c;选择一个合适的投资平台至关重要。中阳凭借其专业的市场分析、创新的投资工具和优质的客户服务&#xff0c;已经成为广大投资者信赖的合作伙伴。本文将详细探讨中阳的独特优势以及其如何助力投资者实现财富增值。 一、多元化的投资产品…

vscode中安装python的包

首先需要调出命令行。然后运行代码&#xff0c;找到你所需要的环境。 PS C:\Users\Administrator\AppData\Local\ESRI\conda\envs\arcgispro-env> conda env list # conda environments: #C:\ProgramData\Anaconda3 base * C:\Users\Administrator\.con…

C++刷怪笼(7)string类

目录 1.前言 2.正文 2.1标准库中的string类 2.1.1string类 2.1.2auto和范围for 2.1.3string类的常用接口说明 2.2string类的模拟实现 2.2.1经典的string类问题 2.2.2浅拷贝 2.2.3深拷贝 ​编辑 2.2.4写时拷贝 3.小结 1.前言 前面我们对C的封装这一大特性进行了详细…