make:
mmma frameworks/base/services/ -j16 相關聯的包一起編譯
make update-api 更新系統API
make clean-SystemUI -j8 clean一個模塊
CP:
cp <files path> <to path>
git:Git是一款免費、開源的分佈式版本控制系統,用於敏捷高效地處理任何或小或大的項目。
git branch ×××× 後面跟分支名錶示創建一個分支
git branch -D ×××× 後面跟分支名錶示刪除一個分支
git branch -a 查看所有分支 帶星號的爲當前分支
git config -l 查看所有提交模板信息 如:提交人姓名
git pull 更新本地代碼
git pull origin 1408:tianyajun 更新本地代碼到當前分支
git status 查看所有目錄下修改文件 後面跟文件名則是查看對本文件修改的所
有提交記錄
git status . 查看當前目錄下修改文件
git diff 查看所有目錄下具體修改內容
git clean -dxf
git checkout -f xxxxx 強制切換到某個分支
git checkout -b ×××× 創建一個分支
git add 主要用於把我們要提交的文件的信息添加到索引庫中
git commit 依據索引庫中的內容來進行文件的提交
git commit --amend 先add之後然後執行這個命令會把本次提交合入到上次記錄然後再push
git push origin develop1:develop2 將本地倉庫develop1中的代碼提交到遠程倉庫develop2中
git reset --hard 回退所有修改代碼但是添加文件不會被刪除 如果後面跟代碼提交的哈希值表示回
退 到當前修改記錄
git revert ×××××× 後面跟代碼提交哈希值 表示回退當前哈希值提交記錄
git config core.fileMode false 忽略修改權限
git config user.name ×××× 修改提交人姓名
git config user.email ×××× 修改提交人郵箱
git cherry-pick ×××× 後面跟代碼提交哈希值 將擁有一個共同主分支的提交記錄從一個分支
提交到另一個分支上面但是隻是提交到本地倉庫
git show ×××× 後面跟提交哈希值表示查看本次提交的具體修改內容
git show ×××× filename 後面跟提交哈希值和文件名字表示只查看本文件修改內容
git log ×××× 後面跟文件名錶示顯示所有修改此文件的記錄
git log --author=×××× . 後面跟作者名錶示查找此人的所有修改記錄
git log --grep=×××× 後面跟log的描述內容表示查找有此描述內容的log
git log --oneline . 表示每條記錄單行顯示提交信息
git log ×××× --name-status 加哈希值表示顯示本次修改了哪些文件
git push origin HEAD:refs/for/develop git中review模式提交命令
git log --since="2016-04-03" --before="2016-10-06" 查看指定時間段的log記錄
解決gerrit二次修改後的衝突問題
git reset xxxxxxxxx(提交id)
git checkout xxxxxxx(文件目錄) 恢復文件目錄下修改內容
git checkout xxxxxx(分支名) 切換分支
git checkout -f xxxxxx 強制切換分支
git commit --amend 改寫提交(首先add修改內容然後commit最後push)
repo forall -c "git reset --hard HEAD~2" android7.0代碼回退所有倉庫
Git 二分調試法,火速定位疑難Bug!
grep : grep (縮寫來自Globally search a Regular Expression and Print)是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。
grep -r "××××" 搜索指定字符串 r表示迭代搜索
grep -r -w "xxxx" 搜索指定完全匹配字符串(如:搜索:magic而不是magical)
grep -i "string" . 不區分大小寫查找string
find : find是linux 命令,它將檔案系統內符合 expression 的檔案列出來。你可以指要檔案的名稱、類別、時間、大小、權限等不同資訊的組合,只有完全相符的纔會被列出來。
find . -name *prop 查找以prop爲結尾的文件
find . -name prop* 查找以prop開頭的文件
find . |grep ××××$ 後面跟文件的結尾表示查找以此結尾的文件
adb : adb的全稱爲Android Debug Bridge,就是起到調試橋的作用。
adb install -r ×××× 後面跟應用路徑名稱代表強制安裝此應用
adb install -g xxxxx 安裝並授予manifest中的全部權限
adb devices 查看手機是否連接成功
adb root 給手機root權限
adb remount 將文件系統remount爲讀寫權限
adb kill-server 關閉adb服務
adb start-server 打開adb服務
adb pull /data/slog ./slog 將slog文件夾複製到當前文件夾下新建的slog中
adb push WidgetSet02.apk /system/app 將WidgetSet02.apk應用安裝到系統目錄下此操作需要
root和系統讀寫權限
adb reboot 重啓手機
adb shell ps 查看後臺所有運行進程
adb shell 掛載到Linux的空間 如果執行之後是#號代表是超級用戶權限如果是
$符合表示普通用戶權限(爲只讀權限)
adb shell dumpsys package xxx.txt 導包名
adb shell am start -n com.android.contoryselect/com.android.contoryselect.CountrySelectActivity
啓動指定包名的Activity
adb logcat -s "focus" 展訊專用打印當前界面調用的包名及類名 其他的用WindowManager
adb logcat|find "focus" 和-s的效果相同但是有時候-s打印不出來
adb logcat -s ×××× 後面跟log的tag 表示打印此tag的log
adb logcat -v time |findstr InputReader|findstr code=115 顯示時間並且log中含有字符串 InputReader和code=115的log信息全部顯示
adb logcat >> text.txt 將輸出的log保存到當前文件夾中的text.txt中
adb logcat -c 清除log緩存
adb logcat -b crash 沒有adb待打開adb之後抓取crash的log
adb logcat -b all 抓取所有log
adb logcat -v time -b kernel > kernel.log 抓取kernel log,其他log類似cd
adb logcat -b radio find "telephony" 篩選radio log
adb shell pm clear com.android.launcher3 命令行清除應用緩存
adb shell am force-stop com.taobao.taobao //後面跟的是包名 kill應用
adb shell ps 查看所有進程列表,Process Status
adb shell ps|find "package_name" 查看package_name程序進程
adb shell kill [pid] 殺死pid進程
mkdir -p daaaaa/daa/daa 創建多級目錄 p 是path的縮寫
cd. > text.xml 創建一個文件夾
scp -r [email protected]:~/mawenke/securebootsigner/debug ./
setprop ro.sprdsise.superpower true (設置宏控值,root版本)
getprop ro.sprdrise.superpower