系统签名

1. 在apk的AndroidManifest.xml中的manifest节点中加入

android:sharedUserId=”android.uid.system”
使程序运行在系统进程中,这样就有权限来修改只有具有系统权限才能修改的属性了。


2. 运行或打包得到未签名的apk


3. 使用目标系统的platform密钥给apk文件签名:

  • 在系统源码环境下build/target/product/security目录下找到platform.x509.pem 和platform.pk8两个文件

  • 在系统源码环境下out/host/Linux-x86/framework目录下找到signapk.jar文件(out目录是在源码被编译之后才会生成)

  • 把它们复制出来放到一个文件夹下,并且把需要进行系统签名的Demo.apk也和它们放到同一个文件夹下

  • 命令行切换到此文件夹下,执行签名命令
    window系统下:
    signapk.jar platform.x509.pem platform.pk8 Demo.apk Demo_signed.apk
    linux 系统下:
    java -jar signapk.jar platform.x509.pem platform.pk8 Demo.apk Demo_signed.apk

进行系统签名之后,此apk就运行在系统进程中并且具有系统权限了,就可以调用只有具有系统级权限才可以使用的API。

猜你喜欢

转载自blog.csdn.net/feng397041178/article/details/78234109