android之使用signapk打包成系统应用,获取系统权限

android杂七杂八 专栏收录该内容
24 篇文章 1 订阅

        有的时候在应用程序中需要获取一些特殊权限,比如写该系统时间,或者关机程序,这是后除了获取root权限方法之外,还可以使用在menifest.xml文件中添加android:sharedUserId="android.uid.system"到根节点中将自己的应用程序打包成系统应用以达到目的。


但是添加android:sharedUserId="android.uid.system"编译成功后的apk是不能安装的 ,这是因为系统应用使用了统一的签名,而我们的签名和系统应用的签名不一样,所以接下来的事情就是怎么将自己的应用签名改成系统的应用签名了(尴尬的是现在国内大多数系统都是定制过得,系统应用签名无法获取,所以该方法仅限于android原生系统)


1、使用目标系统的platform密钥来重新给apk文件签名。

首先在我的Android源码目录中的位置是"build        argetproductsecurity",下面的platform.pk8和platform.x509.pem两个文件。

然后使用系统提供的签名工具signapk.jar,使用步骤是将自己的apk还有上述三个文件放入一个文件夹如图:


2、然后用压缩软件打开自己的apk文件,删掉META-INF目录下的CERT.SF和CERT.RSA两个文件。


3、然后在cmd下进入到改文件夹下我的是e:/to/SignApk使用如下命令:


回车后我们的文件夹下已经多了一个new.apk文件了,这就将我们的应用打包成系统应用了如图:

下面是资源问价signapk.jar  platfrom.pk8   platform.x509.pem 的下载链接:

下载链接




  • 3
    点赞
  • 3
    评论
  • 5
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值