一、git操作:
远程分支如何合并
git rebase 使用(已commit) 本地分支合并
git pull --rebase(1.未commit 2.已commit)1.会失败 2会合并且不会额外生成一个历史记录
git pull 前已有本地修改 没commit拉不了,commit会merge
git pull (会有merge?) 是的
git commit --amend,覆盖上一次的提交,虽然不是撤销操作,但有类似的效果
git rebase -abort,撤销一次rebase
git reset --soft head~1 1表示回退1个版本 2表示回退..._博客园
分支
git checkout -b test remotes/origin/develop
提交某个commit(已测试没用)
git push
回滚历史
git reset --hard HEAD^,回滚到上个版本,(^和~1等价,^^和~2等价,^~2相当于~3,以此类推)
git reset --hard HEAD~2,回滚到前两个版本
git reset --hard
git reset --hard
git reset --hard
撤销历史
git revert HEAD,撤销最近一次的提交,并作为一次新的提交
git revert HEAD~1,撤销最近两次的提交,并作为一次新的提交
git revert
————————————————
git push origin HEAD:refs/for/xxx
二、adb操作
adb install -r -t -d *.apk
adb logcat -v (time *:V) > e:/log.txt
adb logcat > e:/log.txt
ps -A|grep com.vivo.pushservice
adb shell dumpsys window | findstr mCurrentFocus //当前应用包名
模拟广播发送
am broadcast -a android.intent.action.test --es package "com.vivo.pushservice" -d file:///mnt/sdcard
am broadcast -a android.intent.action.PACKAGE_REPLACED --es package "com.vivo.pushservice" -d package:///hello
adb shell am start -n "com.vivo.pushservice/com.vivo.push.example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
adb shell dumpsys package com.bbk.appstore
查看应用信息:adb shell dumpsys package 包名
沙盒
/sdcard/Android/sandbox/包名/
sp文件保存
/data/user_de/0/com.vivo.abe
gradlew assembleRelease 打包命令
三、ANR总结
ANR出现的一般原因:
系统级别的线程阻塞导致的ANR
CPU满负荷(关键字:Cpu usage)
内存原因(从进程的头部信息可以看到数据)
UI线程耗时操作
一般解决办法:
查看进程头部信息—>查看进程资源状态à查看每一条可疑线程的信息
关键字:am_anr ,cmd line: system_server,cmd line:[package name], TimedWaiting , Blocked,am_kill,am_proc_start,EventLog , lock
Total number of allocations :当前内存对象数量
Free memory until OOME 距离发生OOM还有多少内存
Total memory 目前总共开销的内存
“anr in”,“low_memory”, “slow_operation”
四、android源码查看网站
https://cs.android.com/
http://androidxref.com/