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文件少提交了,处理如下
- git rm A 【删除掉A文件】【如果想保留该文件可以使用 git rm --cached A】
- git add B 【修改掉B文件后再次add】
- git add D 【增加D文件】
- 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