Android中使用定制系统的签名文件给应用签名
16lz
2021-01-23
在开发中,有些应用的代码不参与系统编译,而是在IDE工具中编译,然后apk参与系统编译并被签名(需要系统签名权限),在调试中时常需要替换系统中编译出来的apk,签名不同会导致安装失败。
1.在程序代码中添加系统权限
androidManifest.xml中添加 android:sharedUserId="android.uid.system"
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.xxx.xxx.xxx" android:sharedUserId="android.uid.system" >
2.在源码中提取签名文件
源码的签名文件各部相同,由定制系统的厂商来提供,文件在:build\target\product\security目录下
定制源码不同目录结果会有差异,可以将目录整个拷贝出来,或将上图箭头所指的文件拷贝出;
3.签名工具SignApk.jar
下载好SignApk.jar签名工具后,与apk和签名文件放在同一目录(比较方便)
编辑签名脚本例如:
红色箭头为原APK文件名,蓝色箭头为签名后的APK文件名,可随意编辑名称
运行编辑好的bat脚本,就会在同目录下生成签名后的apk
更多相关文章
- Android Studio中新建assets文件的两种方法
- 浅析Android 4.0的通知系统(附Android 4.0设计指南全文翻译)
- 让你自己编写的Android的Launcher成为系统中第一个启动应用程序,
- 如何在自己的App中调用Android系统自带的安装/卸载程序
- 关于Android的反编译apk文件