Android源码开发基本命令

1.打印Log

//将缓冲区的log打印到屏幕并退出
adb logcat -d 
//清除缓冲区log(testCase运行前可以先清除一下)
adb logcat -c
//打印缓冲区大小并退出
adb logcat -g
//输出log
adb logcat -f /data/local/tmp/log.txt -n 10 -r 1   //-f log存到文件log.txt -r 1 代表每个文件最多1KB大小 ,超出就会存在另一个文件 -n 10表示最多10个文件

//kernel log
adb shell cat /proc/kmsg > /tmp/kernel.log  
完整Log
adb logcat -b main -b system -b radio -b events -v time > /tmp/all.log  
adb logcat -b main -b system -b events -v time > /tmp/all.log    
adb logcat -b main -b system -b events -v time -f data/devinad.txt   

adb bugreport > bugreport.txt   //dump bugreport

2.启动activity

am start -a + PkgAction    //通过action启动apk
am start -n + pkgname/classname   //通过包名类名启动apk

3.读取settingsProvider值

adb shell settings get system screen_brightness   //获取system 亮度的值
adb shell settings put system screen_brightness 150   //put值
/data/system/users/0   //cat此目录内容

4.打patch

git format-patch -1  //打一个patch   2的话就会生成两个最近提交的patch 命名为001 002之类
git am -3  //吧patch放入对应的位置 打入patch
git am --continue  弄好之后添加到本地
git commit --amend
git push

5.merge

git checkout xxx

git merge origin/xxxbranch   //切换到xxx分支,merge xxxbranch分支代码

 git log --after=2018-01-01      -----查看 2018-01-01  之后的commit 提交  
 
git log --before=2018-01-01    -----查看 2018-01-01 之前的commit 提交
 
git log --author=xxxx     ------查看 xxx 的commit 提交

6.mount

busybox mount -o remount rw /system/   //mount命令
pm uninstall xxxpkgname
pm install -r xxx.apk

7.adb 

adb connect 192.168.1.1  //连接ip
adb remount
adb root
adb pull
adb push
adb install -r xxx.apk
 

8.调试方法,打印栈 

参考地址:Android打印堆栈的方法

java:

java代码中打印堆栈 Slog.d("azhengye", "Stack=="+new RuntimeException("azhengye debug").fillInStackTrace());

或者new Exception("print stack").printStackTrace(); 然后log中搜索"System.err:"


Native C++

在mk中要添加下面的库:

LOCAL_SHARED_LIBRARIES := \
      libbinder \

包含下面头文件:

include <utils/CallStack.h>
include <binder/IPCThreadState.h>

执行下面方法打印堆栈信息:

CallStack cs("TAG");//打印堆栈信息

pid_t pid = IPCThreadState::self()->getCallingPid();
ALOGV("call pid %d", pid);//打印进程ID

 

9.grep

grep -A 5 可以显示匹配内容以及后面的5行内容
grep -B 5 可以显示匹配内容以及前面的5行内容
grep -C 5 可以显示匹配内容以及前后面的5行内容

logcat -b all | grep -E -i "A|B"     //搜索包含a和b log,E打开表达式扩展

 

10.git

git branch
git branch -av
git branch -d iss53  //delete
git branch -vv //查看本地分支的远程分支

//创建一个分支后,必须要和远程分支关联
git checkout -b branchName  //new branch
Git新建本地分支与远程分支关联问题:git branch --set-upstream

//提交代码之后修改

当前项目中有ABC三个文件

git add -A  【添加三个文件到暂存区】

git commit -m "test" 【提交代码到本地仓库】

git push origin HEAD:refs/for/master 【提交代码到远程仓库】

此时发现代码提交错误,其中A文件不应该提交,而B文件有代码错误, 还有一个D文件少提交了,处理如下

  1. git rm A 【删除掉A文件】【如果想保留该文件可以使用 git rm --cached A】
  2. git add B 【修改掉B文件后再次add】
  3. git add D 【增加D文件】
  4. git commit --amend

11.LINUX基本快捷键

切换应用窗口
     alt+tab   
回到桌面
    ctrl + win + d
打开终端
    ctrl + alt + T
    ctrl + shift + T

 

12.打开log

mtk平台打开ams wms log命令

adb shell dumpsys activity log x on

adb shell dumpsys window -d enable a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值