android 源码下如何将修改编入image 以及其他遇到问提总结
2012-09-01 11:18
316 查看
1. 编译报错,找不到R相关资源
在源码目录下新建一个应用,或者复制其它应用时,常出现这个错误。
1) 什么是R.java
R.java中编译时自动生成的,工程用到所有的资源,都会用到R.java
2) 何时生成
在源码根目录下make全部代码时,才会对每个模块生成R.java
对资源更改后也会重新成生R.java
3) 生成在哪里
out/target/common/obj/APPS/程序名/…../R.java (用find找一下)
4) 解决方法
只要把相关的R.java都删掉
再更新资源(res目录)中一个资源文件(xml),使得R.java重新生成
重新mm
2. 查看当前堆栈调用关系
$ rm /data/anr/traces.txt 清除之前log信息,因为log信息是追加到此文件中的
$ ps 找应用对应进程号
$ kill -3 进程号 该进程当前的堆栈调用写入traces.txt
$ cat /data/anr/traces.txt 查看堆栈信息
3. 修改framework带来的界面显示不正常
重编公共控件时,新生成了framework.jar,常用把它复制到设备中/system/framework/目录下的方法调试,有时会遇到替换framework.jar带来的资源不对的问题,即有些文字和图片显示不正常了。
这是由于framework.jar和system目录中其它的资源ID不统一造成的。解决办法是重做system.img并把它烧写到系统中(参见烧写文档),以下两种方法重做system.img
1) 使用打包命令
$ out/host/linux-x86/bin/mkyaffs2image -f out/target/product/qsd8250_surf/system out/target/product/qsd8250_surf/system.img
2) 在编译时加snod参数,以重建系统镜像(system.img)
$ mm snod
4. 打印当前类名和包名
1) 打印当前类名
Log.d(“TEST”, “class “ + this);
2) 打印当前包名
Log.d(“TEST”, “package” + context.getPackageName());
5. 程序中等待的实现
import java.lang.Thread; // sleep属于Thread类
try { // sleep必须使用try
Thread.sleep(50);
} catch (InterruptedException e) {
}
在源码目录下新建一个应用,或者复制其它应用时,常出现这个错误。
1) 什么是R.java
R.java中编译时自动生成的,工程用到所有的资源,都会用到R.java
2) 何时生成
在源码根目录下make全部代码时,才会对每个模块生成R.java
对资源更改后也会重新成生R.java
3) 生成在哪里
out/target/common/obj/APPS/程序名/…../R.java (用find找一下)
4) 解决方法
只要把相关的R.java都删掉
再更新资源(res目录)中一个资源文件(xml),使得R.java重新生成
重新mm
2. 查看当前堆栈调用关系
$ rm /data/anr/traces.txt 清除之前log信息,因为log信息是追加到此文件中的
$ ps 找应用对应进程号
$ kill -3 进程号 该进程当前的堆栈调用写入traces.txt
$ cat /data/anr/traces.txt 查看堆栈信息
3. 修改framework带来的界面显示不正常
重编公共控件时,新生成了framework.jar,常用把它复制到设备中/system/framework/目录下的方法调试,有时会遇到替换framework.jar带来的资源不对的问题,即有些文字和图片显示不正常了。
这是由于framework.jar和system目录中其它的资源ID不统一造成的。解决办法是重做system.img并把它烧写到系统中(参见烧写文档),以下两种方法重做system.img
1) 使用打包命令
$ out/host/linux-x86/bin/mkyaffs2image -f out/target/product/qsd8250_surf/system out/target/product/qsd8250_surf/system.img
2) 在编译时加snod参数,以重建系统镜像(system.img)
$ mm snod
4. 打印当前类名和包名
1) 打印当前类名
Log.d(“TEST”, “class “ + this);
2) 打印当前包名
Log.d(“TEST”, “package” + context.getPackageName());
5. 程序中等待的实现
import java.lang.Thread; // sleep属于Thread类
try { // sleep必须使用try
Thread.sleep(50);
} catch (InterruptedException e) {
}
相关文章推荐
- android smack源码分析——接收消息以及如何解析消息
- android SMS以及其他消息推送机制的相关好贴总结
- Android 如何在Eclipse中关联源码以及support包源码
- Android反调试方法总结以及源码实现之检测篇(一)
- Android 笔记 ImageView 显示大图遇到的问题 以及 无损显示大图 的解决方案
- 修改nginx的访问目录以及遇到的403错误修改总结
- 解读郭神LitePal源码-数据库的创建以及如何修改源码来创建外置数据库
- 根据《Android内核剖析》第13章以及Android源码总结(三)
- 如何部署Android开发环境以及解决部署中遇到的问题
- android中关于class Build以及如何修改android固件版本号
- repo教程以及repo下载android源码以及遇到的问题
- Android 如何在Eclipse中查看Android API源码以及support包源码
- 转载: Android 如何在Eclipse中查看Android API源码以及support包源码
- Android 如何在Eclipse中查看Android API源码以及support包源码
- 如何在Eclipse中查看Android API源码以及support包源码 分类: H1_ANDROID 2013-11-12 22:32 626人阅读 评论(0) 收藏
- Android 如何在Eclipse中查看Android API源码以及support包源码
- Android 4.4源码编译以及遇到的小问题
- Android 如何在Eclipse中查看Android API源码以及support包源码
- android 打开浏览器 以及其他一些网友总结的intent大全
- ABAP--如何在'REUSE_ALV_GRID_DISPLAY'使用自定义F4帮助,返回多个字段以及计算修改其他字段