这里是用的第一种方式进行签名的,签名文件自行下载。
https://github.com/jxc592/mainrepo/tree/master/android/sign%20system%20app
最近再测试Data Saver过程中,有知道Data Saver对Uid小于10000的app 没有影响。
于是呼,就想制作一个System process的app来测试一下。
可是作为一个应用程序开发者,找了好半天也没有找到我想要直接用来签名的platform.jks文件,于是就用网上用signApk和platform.x509.pem和platform.pk8 来签名我的apk。
要制作SystemProcess的app 需要在AndroidManifest.xml中加入两行代码。
首先是在Manifest 跟节点加入
android:sharedUserId="android.uid.system"
其次可以在application 或者 service节点下加入
android:process="system"
然后build或者run一下会生成一个apk,但此时你安装是安装不了的。需要用Android 的platform key签名一下。
签名的方式有两种,第一种呢就是通过pks和pem文件进行签名,前提是有signApk这个jar包还有前面提到的两个文件。
通过命令:
java -jar signapk.jar platform.x509.pem platform.pk8 app-unaligned.apk targetbuild.apk
生成targetbuild.apk,然后adb install安装。
还有一种是用platform.jks文件直接签名这个需要知道key的信息,可以在build.gradle文件中
加入以下code直接build并run就能够安装成功。
signingConfigs {
releaseConfig {
keyAlias '******'
keyPassword '*****'
storeFile file('F:/platform.jks')
storePassword '*******'
}
}
也可以直接通过Android studio的build菜单下gennerate signed apk 选择key,来生成相应的apk。