連接多個設備后adb命令指定設備運行


平時進行開發時,總有測試人員拿個手機過來反應問題,按之前的方法,先要拔掉原來連接的開發機,再插上測試機,才能使用命令來操作測試機。

 

經過幾天的思考,我找到一種方法,可以在電腦連接多個手機時指定一個想要操作的手機,然后接下來的所有操作都能在指定的手機里執行。

 

要完成這樣的工作,需要知道如下幾個問題。

首先,在原來的工具里,adb是有一個參數指定設備號碼的。

其次,在build/envsetup.sh里有很多常用的工具命令,但這些命令所執行的adb是不指定參數的,即是說在連接多個設備時是不具備指定設備運行的能力。而我們需要的很多命令恰好是在這個腳本里的。

再者,在執行命令時會優先執行主目錄下bin的命令。執行echo $PATH命令, 看到在執行命令時會優先搜索主目錄的bin目錄。

echo $PATH
/home/justin/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sb。。。。

 

有上面三點,就可以作指定設備執行命令的功能。

主要就是改寫adb命令。創建一個adb文件,將下面的代碼加入。

if [ -z $DEVICE ]
then
# echo "" > /tmp/adb_error
/usr/bin/adb "$@" 2>/tmp/adb_error

var=$(cat /tmp/adb_error | grep error )
if [ "$var" != "" ]
then
echo
echo "error: more than one device and emulator"
echo
adb devices
echo
echo "you need to run 'export DEVICE=xxxxx'"
echo
fi
else
/usr/bin/adb -s $DEVICE "$@"
fi

 

在連接多個設備時,在運行adb命令時,就會顯示錯誤信息,並指導你指定設備運行的設定,設定完成后,就可以像只連接一台設備一樣操作android設備了。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM