初學android,捧著一本書,第一個接觸的就是adb,在android路上...
前言:剛開始學習android(堅持每天1篇筆記哈^_^),比較實用的命令是adb,所以就先學習這些,主要用真機調試,模擬器用的是genymotion,所以emulator暫時不大需要哈,可以後續再補
1.查看模擬器/連接設備:
預設情況下,所有adb客戶端使用5037埠號與adb服務進行通信。每個模擬器/設備實例需要一對連續的埠:偶數埠用於控制台連接,奇數埠用於adb連接。
(adb有時候不能啟來,需要查看下埠號是否被占用:netstat -aon | findstr "5037" 然後得到 pid ; tasklist -aon | findstr "pid" 得到當前正在使用該埠的進程;
很多軟體都會占用,所以可以修改adb的埠號:在“系統變數”里增加ANDROID_ADB_SERVER_PORT="XXX"即可);
adb device:顯示了當前連接的模擬器/設備列表。輸入:序列號(設備類型和埠號)和狀態(offline(未連接),device(已連接))兩種。--->只表示設備當前處於連接狀態,並不表示已經啟動完成。--------------真機連接
2.指定模擬器/設備實例執行某種動作:adb -s <name> <command>:
安裝應用程式: adb -s <name> install <apk include path>:install後面指的是這個要安裝到模擬器/設備上的apk所在位置,能夠找到要安裝的apk--->在指定設備上安裝這個軟體
success後看設備桌面發現安裝成功了^_^
根據上面的信息,然後用ES文件瀏覽器(手機給這個軟體開啟root許可權)查看:data/local/tmp下發現有這個軟體,所以可以推測:先是將apk下載到本地的tmp的文件夾下,然後再安裝;
3.模擬器/設備實例的文件複製:
adb pull <device> <local>-------->將設備里的文件(可以是sd卡或者是手機內部存儲空間都是可以的,只要是指定位置是存在的就可以了)推送到本地(電腦)的指定位置
從本地到手機的存儲里進行傳輸:
adb push <local> <device>------------->adb push d://TestApk//testChinese.pdf /storage/emulated/0/ninarming-----(從電腦傳輸到手機的內部存儲里)--發現傳輸的如果是中文的話紅米手機(用的就是紅米1s進行連接的)就不能識別了,但是shell是識別的,字母或者數字是支持的
pull跟push:
pull-->拉下來的意思,有沒有一種從雲端拉數據的感覺,而設備就可以類比於雲端,因為設為可以是遠程的,不是通過usb連接,可以通過無線,遠程訪問,所以相對來說文件從設備到現在的cmd的電腦(本地)就用pull-->adb pull <romote> <local>;
push--->推上去,因為cmd就是你操作的電腦(本地),相對來說就是水平面,而設備-->雲端 就是海平面之上,想要將文件往上送就需要推動力啦,所以adb push <local> <romote>
4.進入shell:
adb shell ----------->進入shell,
exit----------------->是退出shell
a.下麵是進入shell後先是查看指定目錄下存在的文件 ls;
b.創建文件夾 mkdir testMakeDir;
c.查看是否創建成功 ls;
d.刪除指定文件夾 rmdir testMakeDir;
e.查看是否刪除成功 ls,然後就退出了。