ADB

adb shell 運(yùn)行l(wèi)ua文件

1, android設(shè)備root權(quán)限
2, 將liblasa.so push到/system/lib下
3, 將lasa push 到/system/bin/下 , chmod 777 lasa
4, 將需要測(cè)試的lua腳本和資源等相關(guān)so puah到/data/test/目錄下
5, 調(diào)用lasa test.lub
6, 測(cè)試相關(guān)打印在logcat -s lasa 輸出

查詢ip

adb shell ip addr
adb shell netcfg

錄屏

adb shell screenrecord /sdcard/test.mp4

  1. 視頻保存目錄可以自己指定,如上面的/sdcard/test.mp4凯砍,命令執(zhí)行后會(huì)一直錄制180s鹅髓,按下ctrl+c可以提前結(jié)束錄制輸入 –time-limit N难菌,限制視頻錄制時(shí)間為N秒
  2. 對(duì)于高分辨率的手機(jī)溜哮,錄制的視頻很大
    adb shell screenrecord --size 848*480 /sdcard/test.mp4
  3. 默認(rèn)比特率是4M/s,為了分享方便漆魔,我們可以調(diào)低比特率為2M
    adb shell screenrecord --bit-rate 2000000 /sdcard/test.mp4
  4. 使用adb pull 即可把手機(jī)SD卡中視頻獲取到本地
    adb pull /sdcard/test.mp4 .

日志過濾

反向過濾 : adb shell "logcat -v threadtime | grep -vE "lasa || Mtk""
正向過濾 :adb logcat lasa:D HomeNode:I *:S
只打印錯(cuò)誤 : adb logcat *:E

選項(xiàng)解析 :
-- "-s"選項(xiàng) : 設(shè)置輸出日志的標(biāo)簽, 只顯示該標(biāo)簽的日志;
-- "-f"選項(xiàng) : 將日志輸出到文件, 默認(rèn)輸出到標(biāo)準(zhǔn)輸出流中, -f 參數(shù)執(zhí)行不成功;
-- "-r"選項(xiàng) : 按照每千字節(jié)輸出日志, 需要 -f 參數(shù), 不過這個(gè)命令沒有執(zhí)行成功;
-- "-n"選項(xiàng) : 設(shè)置日志輸出的最大數(shù)目, 需要 -r 參數(shù), 這個(gè)執(zhí)行 感覺 跟 adb logcat 效果一樣;
-- "-v"選項(xiàng) : 設(shè)置日志的輸出格式, 注意只能設(shè)置一項(xiàng);
-- "-c"選項(xiàng) : 清空所有的日志緩存信息;
-- "-d"選項(xiàng) : 將緩存的日志輸出到屏幕上, 并且不會(huì)阻塞;
-- "-t"選項(xiàng) : 輸出最近的幾行日志, 輸出完退出, 不阻塞;
-- "-g"選項(xiàng) : 查看日志緩沖區(qū)信息;
-- "-b"選項(xiàng) : 加載一個(gè)日志緩沖區(qū), 默認(rèn)是 main, 下面詳解;
-- "-B"選項(xiàng) : 以二進(jìn)制形式輸出日志;

查看機(jī)器信息

adb shell getprop | grep -E "model|version.sdk|manufacture|hardware|platform|revision|serialno|product.name|brand"
附加:
grep 同時(shí)滿足多個(gè)關(guān)鍵字和滿足任意關(guān)鍵字
① grep -E "word1|word2|word3" file.txt
滿足任意條件(word1硝全、word2和word3之一)將匹配。
② grep word1 file.txt | grep word2 |grep word3
必須同時(shí)滿足三個(gè)條件(word1抄腔、word2和word3)才匹配

adb起不來

netstat -ano >./Desktop/t.txt 找到哪個(gè)占用了5037
TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       4680
taskkill /F /pid 4680         
再嘗試adb shell.

adb 查看常用屬性

adb shell getprop | findstr "gsm" : 顯示包含gsm的系統(tǒng)屬性
adb shell cat /proc/meminfo : 查看當(dāng)前內(nèi)存情況
adb shell cat /proc/cpuinfo : cpu情況
adb shell cat /proc/iomem : io內(nèi)存分區(qū)

截圖

adb shell screencap -p /sdcard/1.png
adb pull /sdcard/1.png

廣播

am broadcast -a 廣播action : 發(fā)送一條廣播
adb shell am broadcast 后面的參數(shù)有:
[-a <ACTION>]
[-d <DATA_URI>]
[-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[-n <COMPONENT>]
[-f <FLAGS>] [<URI>]

例如: aiosTTS播報(bào)測(cè)試
adb shell am broadcast -a aios.intent.action.SPEAK --es aios.intent.extra.TEXT 地圖縮小 --ei aios.intent.extra.PRIORITY 1

pm am

am startservice -a 服務(wù)action : 啟動(dòng)一項(xiàng)服務(wù)
am force-stop 包名 : 強(qiáng)制關(guān)閉一個(gè)應(yīng)用

package manager 簡稱 pm
pm install apk路徑 : 安裝程序
pm uninstall 包名 : 卸載程序
pm disable 包名 : 禁用應(yīng)用
pm enable 包名 : 啟用
pm -p 包名 : 應(yīng)用裝在哪里
pm list permissions
查看6.0需要?jiǎng)討B(tài)申請(qǐng)危險(xiǎn)權(quán)限
pm list permissions -d -g

input keyevent

input keyevent num : num=3:home鍵 num=4:back鍵
input text "str" : 文本輸入 str
參考

dump系統(tǒng)信息

dumpsys activity|grep mFocusedActivity 哪個(gè)activity在最前面

top -m 10 -s cpu -d 取前十條,已cpu的暫用降序排列.-d刷新周期(秒)
svc wifi enable / svc wifi disable : 開關(guān)wifi
service list : services信息
dumpsys meminfo <package_name> : 內(nèi)存使用情況
dumpsys package <package_name> : 安裝包信息
df : 設(shè)備文件信息
mount -o remount rw /system : 把system目錄掛載為可讀寫(mouont -rw -o remount /system)

procrank | grep com.aispeech.aios 查看aios內(nèi)存占用情況
dumpsys meminfo com.aispeech.aios 查看aios內(nèi)存占用情況
dumpsys cpuinfo 查看cpu占用情況
top -m 10 -s cpu 查cpu占用前10情況
busybox top 實(shí)時(shí)查看CPU占用情況
cat /proc/cpuinfo 查看硬件cpu參數(shù)

dumpsys :

dumpsys [options]
meminfo 顯示內(nèi)存信息
cpuinfo 顯示CPU信息
account 顯示accounts信息
activity 顯示所有的activities的信息
window 顯示鍵盤瓢湃,窗口和它們的關(guān)系
wifi 顯示wifi信息

mac地址
file = fopen("/sys/class/net/wlan0/address", "rb");
file = fopen("/sys/class/net/usb0/address", "rb");

時(shí)區(qū)
adb shell
cat /data/property/persist.sys.timezone //時(shí)區(qū)配置文件
setprop persist.sys.timezone GMT //修改屬性

wifi連接adb調(diào)試

  1. 手機(jī)需要安裝終端(如 : BetterTerminal)
  2. 運(yùn)行: su
    setprop service.adb.tcp.port 5555
    stop adbd
    start adbd
  3. 查看手機(jī)ip 192.168.0.50 (哈哈 ,我的 , 同志們別亂連)
  4. adb connect 192.168.0.50 : 5555
    顯示connected to 192.168.0.50:5555表示連接成功

誰占用了mic

adb shell dumpsys media.audio_flinger

Tracks of which 1 are active
Active Client Fmt Chn mask Session S Server fCount SRate
yes 2745 1 0000000C 24 6 0742E2AA 8000 16000
0 Effect Chains

Reroute submix audio module:
route[0] rate in=0 out=0, addr=[]
route[1] rate in=0 out=0, addr=[]
route[2] rate in=0 out=0, addr=[]
route[3] rate in=0 out=0, addr=[]
route[4] rate in=0 out=0, addr=[]
route[5] rate in=0 out=0, addr=[]
route[6] rate in=0 out=0, addr=[]
route[7] rate in=0 out=0, addr=[]
route[8] rate in=0 out=0, addr=[]
route[9] rate in=48000 out=48000, addr=[]
root@rmt8735_6tb_s_l1:/ # ps |grep aios
u0_a47 2672 279 996904 30416 ffffffff f710c988 S com.aispeech.aios.wechat
u0_a47 2745 279 1136052 98968 ffffffff f710c988 S com.aispeech.aios
system 2831 278 1344608 47140 ffffffff a3cd444c S com.aispeech.aios.adapter

高通cpu測(cè)試

#! /bin/bash
timestamp=`date +20%y%m%d%H%M%S`
while true
    do sleep 1
    adb shell cat /sys/devices/system/cpu/online >> ./cpuinfo.txt
    adb shell "top -n 1 | grep -e \"com.aispeech.aios\"" >> ./cpuinfo.txt
done

簽名文件對(duì)比

可以比對(duì)apk簽名的fingerprint
假定安裝了JDK,如果想查HelloWorld.apk所使用的簽名的fingerprint赫蛇,可以這樣做:

  1. 查找apk里的rsa文件

(Windows)

jar tf HelloWorld.apk |findstr RSA

(Linux)
$ jar tf HelloWorld.apk |grep RSA

META-INF/CERT.RSA

  1. 從apk中解壓rsa文件

jar xf HelloWorld.apk META-INF/CERT.RSA

  1. 獲取簽名的fingerprints

keytool -printcert -file META-INF/CERT.RSA

...
Certificate fingerprints:
MD5: BC:6D:BD:6E:49:69:2A:57:A8:B8:28:89:04:3B:93:A8
SHA1: 0D:DF:76:F4:85:96:DF:17:C2:68:1D:3D:FF:9B:0F:D2:A1:CF:14:60
Signature algorithm name: SHA1withRSA
Version: 3
...

  1. 清理工作绵患,刪除rsa文件

(Windows)
rmdir /S /Q META-INF

(Linux)
rm -rf META-INF

debug.keystore系統(tǒng)簽名

創(chuàng)建key,需要用到keytool.exe (位于jdk1.6.0_24\jre\bin目錄下)悟耘,使用產(chǎn)生的key對(duì)apk簽名用到的是jarsigner.exe (位于jdk1.6.0_24\bin目錄下)落蝙,把上兩個(gè)軟件所在的目錄添加到環(huán)境變量path后,打開cmd輸入

D:>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore
/說明:-genkey 產(chǎn)生密鑰
-alias demo.keystore 別名 demo.keystore
-keyalg RSA 使用RSA算法對(duì)簽名加密
-validity 40000 有效期限4000天
-keystore demo.keystore /
D:>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk androiddebugkeystore
/
說明:-verbose 輸出簽名的詳細(xì)信息
-keystore demo.keystore 密鑰庫位置
-signedjar demor_signed.apk demo.apk demo.keystore 正式簽名暂幼,三個(gè)參數(shù)中依次為簽名后產(chǎn)生的文件demo_signed筏勒,要簽名的文件demo.apk和密鑰庫androiddebugkeystore
/

參考

雜七雜八

  1. mtk驅(qū)動(dòng)層錄音

com.mediatek.engineermode/.audio.AudioAudioLogger或者電話鍵盤##3646633##
勾選input
adb root
kill mediaserver
adb pull /sdcard/mtklog/audio_dump/


aapt常用總結(jié)

aapt d[ump] [--values] WHAT file.{apk} [asset [asset ...]]
badging Print the label and icon for the app declared in APK.
permissions Print the permissions from the APK.
resources Print the resource table from the APK.
configurations Print the configurations in the APK.
xmltree Print the compiled xmls in the given assets.
xmlstrings Print the strings of the given compiled xml assets.

來源

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市旺嬉,隨后出現(xiàn)的幾起案子管行,更是在濱河造成了極大的恐慌,老刑警劉巖邪媳,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捐顷,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡雨效,警方通過查閱死者的電腦和手機(jī)套菜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來设易,“玉大人逗柴,你說我怎么就攤上這事《俜危” “怎么了戏溺?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵渣蜗,是天一觀的道長。 經(jīng)常有香客問我旷祸,道長耕拷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任托享,我火速辦了婚禮骚烧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘闰围。我一直安慰自己赃绊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布羡榴。 她就那樣靜靜地躺著碧查,像睡著了一般。 火紅的嫁衣襯著肌膚如雪校仑。 梳的紋絲不亂的頭發(fā)上忠售,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音迄沫,去河邊找鬼稻扬。 笑死,一個(gè)胖子當(dāng)著我的面吹牛羊瘩,可吹牛的內(nèi)容都是我干的泰佳。 我是一名探鬼主播,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼困后,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼乐纸!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起摇予,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤汽绢,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后侧戴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宁昭,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年酗宋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了积仗。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蜕猫,死狀恐怖寂曹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤隆圆,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布漱挚,位于F島的核電站,受9級(jí)特大地震影響渺氧,放射性物質(zhì)發(fā)生泄漏旨涝。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一侣背、第九天 我趴在偏房一處隱蔽的房頂上張望白华。 院中可真熱鬧,春花似錦贩耐、人聲如沸弧腥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸟赫。三九已至蒜胖,卻和暖如春消别,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背台谢。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工寻狂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人朋沮。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓蛇券,卻偏偏與公主長得像,于是被迫代替她去往敵國和親樊拓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子纠亚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容