Android——TV真机调试apk(android:sharedUserId="android.uid.system")
当需要调试的apk 的AndroidManifest.xml中有使用 android:sharedUserId="android.uid.system" ,表示此apk和系统拥有相同的uid,可以共享系统资源,可以加入同一进程中。但是要使用eclipse编译adb安装调试安装 肯定会报错,如下:
Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLEPlease check logcat output for more details.Launch canceled!
关于android的签名机制,可以参考Android——编译release版签名系统。
因为eclipse生成的apk签名与system不同,android系统规定使用相同uid的必须拥有相同的签名。
我所使用的方法是写一个脚本,在eclipse生成apk之后给这个apk重签名,然后再launch安装。
step 1:配置签名环境
拷贝 源码 /build/target/product/security/下的 platform.pk8 和 platform.x509.pem 到 out/host/linux-x86/framework、
在out/host/linux-x86/framework下执行:
java -jar signapk.jar platform.x509.pem platform.pk8 $sourceapk $apkname
$sourceapk为需要签名的apk路径,$apkname为签名成功之后的apk。
step 2:调试配置
最好写一个shell脚本,执行上面的操作,在eclipse中做如下设置:
1):编译直接生成apk
去掉 Skip packaging and dexing until export or launch.....
2):配置eclipse external tool
RUN——>External Tools——>External Tools Configurations
new 一个program 选择写好的 signed 脚本
再在 window——>preferences——>General——>Key 配置快捷键
F10 作为 clean-bulid F11作为external tool F12作为run debug 。
至此 OK~~
撰写不易,转载请注明出处http://blog.csdn.net/jscese/article/details/12184513#comments
更多相关文章
- 开发Android应用的时候遇到的问题
- Android——编译release版签名系统
- 在Ubuntu上下载编译安装Android最新内核源代码
- Android启动脚本init.rc(2)
- Android反编译工具Apktool使用
- java/android 使用swig编译c/c++ 代码类型转换
- android 反编译
- Android(安卓)studio 获取应用签名
- android下载编译以及文件系统提取总结