eclipse编译出来的apk,安装时报出INSTALL_FAILED_SHARED_USER_INCOMPATIBLE的错误。

原因:apk的AndroidManifest.xml中声明了android:sharedUserId="android.uid.system",但没有相应的签名

解决方案:

1. 找到编译目标系统时的签名证书platform.pk8和platform.x509.pem,在android源码目录build\target\product\security下。

没有那两个证书的话,直接到我的个人上传资源中下载即可. http://download.csdn.net/detail/u010260104/7680229

 

2. 将签名工具(signapk.jar)、签名证书(platform.pk8和platform.x509.pem)及编译出来的apk文件都放到同一目录

 

3.执行签名命令:

signapk.jar  platform.x509.pem  platform.pk8 Demo.apk signedDemo.apk

 

4.将signedDemo.apk安装即可

 

类似地,在android源码树编译也会存在同样的问题,解决方法类似。

或直接把目标系统的签名证书platform.pk8和platform.x509.pem(根据android.mk文件的LOCAL_CERTIFICATE 定义,也可能是shared.pk8、media.pk8等)覆盖到build\target\product\security也可,这样就不需要再手工签名了。

更多相关文章

  1. Android(安卓)Studio JNI源码调试C++动态库
  2. ffmpeg 编译至android
  3. Android(安卓)couldn't find xxx.so 问题解决 兼容解决
  4. Android(安卓)编译出错版本匹配问题解决办法
  5. 使用android framework源码编译自己apk问题
  6. Android打包签名——生成keystore到完成签名
  7. 在Window下使用NDK编译LuaJIT-2.0.1版
  8. Android(安卓)平台上SDCard的自动mount的解决方法
  9. Android(安卓)4.4源码编译环境升级gcc版本的方法

随机推荐

  1. 谈谈PHP中interface的用处
  2. 新鲜出炉的PHP高级面试题来啦!【附答案】
  3. 示例PHP MemCached高级缓存应用代码
  4. 直击php反射学习之不用new方法实例化类操
  5. 分享PHP5.5在windows安装使用memcached服
  6. 解析php性能分析之php-fpm慢执行日志slow
  7. 示例PHP购物车类Cart.class.php定义与用
  8. 最简洁的PHP生成指定长度随机数的方法
  9. PHP如何使用Redis?(常见使用场景介绍)
  10. 谈谈PHP中的 ->、=> 和 :: 符号