[置顶] Android开发概要记录

1..o文件、 .ko和.so文件的路径

\kernel\out\mediatek---------------.o文件

.c/.cpp文件编译生成的目标文件

\out\target\product\hsimobile77_ics2\system\lib\modules----.ko文件

.ko是整个模块生成的驱动文件(内核模块),其中可以包括了.so,如果编译进 kernel  只可以看到.o 不会生成ko

\out\target\product\hsimobile77_ics2\system\lib------------.so文件

 .so 是部分文件编译成库文件,芯片原厂不希望你看到源码,可以已这样的方式提供,相当于WINCE下的.dll文件(动态链接库文件)


2.用Ctrl+C停止正在进行的编译操作


3.如何快速编译单个驱动和调试?


4.adb logcat > logo.txt可以抓取调试信息

adb shell

cat /proc/kmsg也可以抓调试信息。

5./dev下通过ls -l可以查看设备文件更多详细的信息,比如主设备号和次设备号。


6.adb shell setprop service.adb.root 1 设置权限。


7.linux下fastboot使用

adb reboot bootloader

fastboot flash boot W:\c4050-q4\out\target\product\msm8909\boot.img

fastboot reboot


8.svn一些常用的命令

svn status查看有更新的文件

svn log查看更新记录


svn co svn://192.168.100.XXX/c4050-q4

获取指定版本

svn checkout http://siphon.googlecode.com/svn/trunk/siphon -r r791

 

svn up获取新版本代码

svn commit -m "解决DC无法充电及显示问题"


svn status可知道修改的文件、和增加的文件。

svn add file提交增加的文件


递归删除目录下.svn文件

find和xargs结合
  find . -name "*.svn" | xargs rm -rf

9.Android 性能分析工具dumpsys的使用

 Android提供的dumpsys工具可以用于查看感兴趣的系统服务信息与状态,手机连接电脑后可以直接命令行执行adb shell dumpsys 查看所有支持的Service但是这样输出的太多,可以通过dumpsys | grep "DUMP OF SERVICE" 仅显示主要的Service的信息


也可以单独列出某个系统服务的,比如battery,命令:dumpsys battery,如果想知道具体可以做哪些操作可:dumpsys battery -h来查看,比如我们想设置电量百分比,可以

dumpsys battery set level 5。

10. /sys/kernel/debug/msm_otg

调试路径

11.编译和替换framework部分

比如修改\frameworks\base\services\core\java\com\android\server\BatterySevice.java

编译命令,编译命令mmm frameworks/base/services/

user版本。Jar中的部分被编译程序优化成了odex文件和jar文件,请看log最后一行。

但是user你们应该没有权限push进去的。

 

如果你们要调试,请编译eng版本的jar,这样jar应该就是完整的2m大小了。


adb remount

adb push services.jar /system/framework/

adb reboot


11.手动设置电池容量
echo 50 > sys/modules/qpnp_bms/parameters/bms_fake_battery


12.暗码进入一些测试界面

#*2008#   ——软件内外部版本号查询

#*20081111#   ——测试模式开启关闭/dump开关控制

*#889#   —— CIT 工程测试

*#06#    —— MEID/IMEI 查询

*#*#4636#*#*  ——包含Phone information、Battery information、Usage statistics、WI-FI information


13.linux主要目录的一样

/proc/devices文件可以获知系统中注册的设备,第1列为主设备号,第2列为从设备名


14.快递定位问题

(1) 通过logo定位具体的地方

看日志,在差不多的地方加个dump_stack() 就很容易看出来调用关系

15.系统属性

(1) msm8909系统属性文件

/c4050-q4/device/qcom/msm8909/system.prop


16.测试模式

从2016.0115日开始系统,默认关闭测试模式,相对之前默认打开测试默认,有以下变化:

(1) 接入USB线,需要选择才能打开USB debug模式

(2) USB模式默认为MTP,之前为charging模式

(3) 开机后,我们刷机软件QFIL识别不到端口(但关机状态下同时按下两个侧按键+power按键,还是可以正常刷机)

 

我们可以通过#*20081111#可以打开测试模式。


你可能感兴趣的:([置顶] Android开发概要记录)