1、在Manifest标签下加上android:sharedUserId=“android.uid.system”
2、下载platform.pk8、platform.x509.pem、signapk.jar压缩包
platform.pk8与platform.x509.pem在android设备上不一定是通用的,这两个文件是在设备系统文件中的,本人在智能音响上是可以用的
3、将项目打成正式包,因位debug包大多数是不开混淆的。将打好的包放到解压完压缩包后的目录里面,使xxx.apk与platform.pk8、platform.x509.pem、signapk.jar三者在同级下
4、打开cmd进入到解压完压缩包后的目录,执行
java -jar signapk.jar platform.x509.pem platform.pk8 d:\signapk\a.apk d:\signapk\b.apk
d:\signapk\a.apk是你打好的包
d:\signapk\b.apk是生成的包
现在就可以将生成的包运行在android设备上了。
但是这种方式很麻烦,每次测试都需要重复一遍这些操作,更方便的方法是将系统签名打入keystore,使用该keystore即可在Android Studio环境下生成带系统签名的apk
5、生成keystore
keytool -genkey -alias gm_system.keystore -keyalg RSA -validity 36500 -keystore android.keystore
-alias后面是别名(key alias)
-keystore后面是生成的keystore文件名字
之后会让你设置密码、填写地区等,自己看着填
6、下载keytool-importkeypair,https://github.com/getfatday/keytool-importkeypair/
把生成的keystore和platform.pk8、platform.x509.pem放到解压后的keytool-importkeypair文件中
在linux系统下,cd到解压后的keytool-importkeypair文件中,将系统签名打入keystore,执行
./keytool-importkeypair -k ./android.keystore -p password -pk8 platform.pk8 -cert platform.x509.pem -alias gm_system
android.keystore是上一步生成的keystore文件名字
-p后面是密码,与上一步生成的keystore一样就可以
-alias是别名(key alias)与上一步生成的keystore一样就可以
这个时候会覆盖上一步生成的keystore,android studio直接使用就行了