前言
我們都知道,連接模擬器設備的字符串里,需要填上各個模擬器的端口號:
# 比如雷電模擬器的端口號為5554
auto_setup(__file__,devices=["Android://127.0.0.1:5037/emulator-5554"])
# 比如mumu模擬器的端口號為7555
auto_setup(__file__,devices=["Android://127.0.0.1:5037/127.0.0.1:7555"])
不同品牌的默認端口號我們搜一下就知道,但是很多同學還會使用模擬器的多開功能,那么這個 多開的模擬器端口號如何查看呢 ?下文我們一起來看看。
1.使用命令行查看模擬器端口號
之前我們在查看連接到本地的安卓設備列表時,可以使用命令行命令 adb devices
查看,列表會顯示出本地安卓設備的序列號:
其實,該命令也會顯示出本機的模擬器設備,但與安卓真機不同的是,列表會顯示模擬器的 localhost:adb port
,而不是像安卓真機那樣顯示序列號。
舉個例子,我們使用夜神的多開工具開啟兩個夜神模擬器,然后分別開啟倆個模擬器里面的 USB調試
功能,最后使用 adb devices
命令,效果如下:
可以看到,62001是夜神默認的1個端口號,62025就是我們多開的那個夜神模擬器的端口號。至此,我們就非常快速地拿到了多開模擬器的端口號了。
但是使用命令行查看模擬器端口號時,新手同學還非常容易遇到一些問題:
1)'adb' 不是內部或外部命令,也不是可運行的程序
這個報錯非常常見,大致原因有2個,1個是我們電腦上沒安裝adb工具,但這個的可能性比較小;另1個是,沒有把 adb.exe
的所在路徑添加到我們的環境變量當中去,這個原因就常見的多。
所以同學們使用adb命令時,如遇到上述報錯,不妨檢查下自己的環境變量中,是否已經包含了 adb.exe
的所在路徑。
2)adb devices刷不出任何模擬器設備
如果確保我們的模擬器已經正常開啟,並且打開了開發者模式里面的 USB調試
功能,但是我們仍舊不能使用 adb devices
刷新出任何的模擬器設備列表,此時我們就要考慮下是否是當前存在 adb沖突問題。
什么是adb沖突呢?其實就是我們當前的電腦中,存在多個版本的adb工具,比如同時存在一個39版本和40版本的adb,就很可能出現adb沖突,而導致一些設備連接異常。
這種沖突常見於模擬器連接中,因為大多數的模擬器,都是自帶adb工具的,這個adb工具很可能跟我們當前使用的adb工具是不一樣的版本,就容易導致adb沖突。
如何解決adb沖突呢?非常簡單,只要找到我們電腦中不一樣版本的adb,然后把他們的版本統一成一個版本就行。
舉個例子,比如當我們發現,airtest里面的adb版本,和夜神模擬器的adb版本不一樣,那么我們可以直接復制airtest里面的adb文件,然后覆蓋掉夜神模擬器的adb文件:
airtest的adb文件所在路徑如下:
夜神模擬器的adb文件所在路徑如下:
另外這里還需要注意的是,夜神模擬器的adb文件命名為 nox_adb.exe
,把airtest的adb文件復制過來之后,也需要按照夜神模擬器的規則命名。
2.使用AirtestIDE查看模擬器端口號
同理,我們也可以使用AirtestIDE的設備連接窗口查看多開模擬器的端口號。同樣是先打開2個夜神模擬器,然后分別開啟它們開發者選項里面的 USB調試
功能,最后點擊我們設備連接窗口的刷新ADB功能,即可查看:
3.在多開模擬器的配置文件里查看其端口號
同樣以上述的夜神模擬器多開為例,在夜神模擬器安裝的bin目錄下,打開 BignoxVMS
文件夾,可以看到這里包含了2個模擬器的配置文件:
其中 Nox_1
是多開的那個夜神模擬器的配置文件,我們在里面找到 Nox_1.vbox
並打開,找到 guestport=5555
,那里對應的 hostport
,就是我們的目標端口號:
小結
好了,今天查看多開模擬器的小技巧都告訴大家了,方法都非常靈活,同學們可以按需使用。另外還要特別注意里面提到的 adb不是內部或者外部命令 還有 adb沖突 這倆個問題,非常常見哦~
Airtest官網:http://airtest.netease.com/
Airtest教程官網:https://airtest.doc.io.netease.com/
搭建企業私有雲服務:https://airlab.163.com/b2b
官方答疑 Q 群:654700783
呀,這么認真都看到這里啦,幫忙點個推薦支持一下唄,灰常感謝~