1.
在应用程序的AndroidManifest.xml中的manifest节点中加入
android:sharedUserId="android.uid.system"这个属性。
2.修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行
3.
用压缩软件打开apk文件,删掉META-INF目录下的CERT.SF和CERT.RSA两个文件。
4.
使用目标系统的platform密钥来重新给apk文件签名。
4.1)找到密钥文件
gabby@gabby-desktop:~/work/0PRJ-SEAGATE/GBL8612A01_A/android_qc_l_qrd8939_cs/build/target/product/security$ ls
Android.mk media.x509.pem platform.x509.pem releasekey.pk8 shared.pk8 testkey.pk8 verity_key verity.x509.pem
media.pk8 platform.pk8 README releasekey.x509.pem shared.x509.pem testkey.x509.pem verity.pk8
4.2)找到签名工具
gabby@gabby-desktop:~/work/0PRJ-SEAGATE/GBL8612A01_A/android_qc_l_qrd8939_cs/out$find -name signapk.jar
./host/linux-x86/framework/signapk.jar
4.3)签名
gabby@gabby-desktop:~/work3/0PRJ-TOSHIBA/Apk_Carson/build_apk_env/out/Amigo$ java -jar signapk.jar platform.x509.pem platform.pk8 Amigo_Carson.apk Amigo_Carson_signed.apk
gabby@gabby-desktop:~/work3/0PRJ-TOSHIBA/Apk_Carson/build_apk_env/out/Amigo$
参考信息:
http://blog.csdn.net/xiaoyaovsxin/article/details/8490567
先找到相应的签名文件,文件位置:可以在......\android_project\build\target\product\security中找到media.pk8、media.x509.pem、platform.pk8、platform.x509.pem、shared.pk8、shared.x509.pem、testkey.pk8、testkey.x509.pem等签名文件,对应不同的权限。
自带的签名工具signapk.jar:由......\android_project\out/host\linux-x86\framework/中找到。
然后放到一个文件夹中,签名命令(一定要使用相应的权限,权限可在menufest和mk文件--LOCAL_CERTIFICATE 中相应找到):
java -jar signapk.jar platform.x509.pem platform.pk8 MyDemo.apk MyDemo_signed.apk 得到具有对应权限的APK
优化APK:
zipalign -v 4 MyDemo_signed.apk MyDemo_new.apk
查循APK是否优化过:
zipalign -c -v 4 MyDemo.apk
Installation error: INSTALL_FAILED_UID_CHANGED 的解决办法
http://blog.csdn.net/enhancing/article/details/8490473
出现此问题的原因大多是apk冲突造成,解决的办法如下:
1. Settings -> Applications, 卸载出现问题的apk,重新安装即可。
2. 如果apk无法卸载,则将apk相关文件和相关内容删除(必须是有root权限的手机)。Step:
(1) 删除可能相关的文件:/data/app(apk file), /system/app/(apk file), /data/data/(data file),
(2) 除了删除以上文件之外,还需要将/data/system/packages.xml文件中与apk相关的内容全部删除。Step:
a. adb pull /data/system/packages.xml ~/Desktop.
b. 修改pakcages.xml,将与apk相关的packages标签及其内容删除。
c. adb push ~/Desktop/packages.xml /data/system/.
(3) 重启手机
(4) 重新安装apk文件。
一般方法一就能解决问题,方法二算是后补。