![](/img/trans.png)
[英]can't connect to development server when running react native app on nox emulator
[英]ADB can't connect to Nox
我有一個問題,我試圖解決大約 3 天,但我找不到任何可行的解決方案。 問題是當我嘗試連接本地主機和端口 62001 時,我無法將我的 nox 播放器連接到 adb。我所做的一切是:
-nox_adb.exe
nox_adb.exe 連接 127.0.0.1:62001 -> 無法連接到 127.0.0.1:62001。
nox_adb.exe connect 127.0.0.1:5037 -> connected to 127.0.0.1:5037(但是當我嘗試使用這個 deviceId 運行 react native 項目時,它返回“No Android devices connected”)
-adb.exe(來自 Android SDK)
adb.exe 連接 127.0.0.1:62001 -> 無法連接到 127.0.0.1:62001。
adb.exe 連接 127.0.0.1:5037 -> 無法連接到 127.0.0.1:5037。
我已經安裝了整個 android studio(我認為)需要的庫、Google USB 驅動程序、sdk 平台等平台:Windows 7 x64 Nox:6.2.0.0
我讀過了:
有人能告訴我我做錯了什么嗎?
好的,幾個小時后我找到了問題的原因。
我試圖用 SDK 工具、NOX 播放器重新安裝整個 Android Studio,清除此應用程序的緩存,結果是相同的,無法連接到設備...我找不到有關如何更改 NOX 播放器 IP/的任何信息端口或在哪里獲取我的 Nox 播放器 IP/端口(在每個站點上都是相同的信息 - nox 與 127.0.0.1:62001 連接),所以我想出了一個想法來檢查我的計算機上的偵聽端口。
起初我在命令行中輸入“ netstat -aon | find '62001' ”來查找監聽端口 62001 的應用程序。結果沒有應用程序監聽這個端口......好吧,聽起來不錯。
在下一步中,我使用命令“ tasklist ”檢查了所有正在運行的應用程序以查找 Nox 正在運行的任務及其 PID ......我發現:
(我在執行此步驟時運行了 Nox Emulator)
然后我用命令“ netstat -aon | findstr PID ”檢查每個進程(PID是進程ID,你會在輸入命令“ tasklist ”后得到)
在Nox.exe 中,沒有端口是正確的,每次“無法連接...”
在NoxVMSVC.exe 中沒有端口正在偵聽(空列表)
在NoxVMHandle.exe 中,我有大約七個端口正在偵聽...所以我一一檢查並找到了用於連接設備的正確端口( 62025 )
所以最后我可以毫無問題地連接到 Nox Emulator,使用命令“adb connect 127.0.0.1:62025”。 模擬器與 React-Native 項目配合良好,應用程序已正確安裝。
也許有人會在連接到 Nox 模擬器時遇到類似的問題。
最好的祝願!
這個ref應該可以解決你的問題,這里是摘要:
在 nox 設置中啟用“Root”復選框
進入nox模擬器中的設置,打開開發者選項,打開usb調試
轉到 nox 目錄,運行命令: nox_adb.exe connect 127.0.0.1:62001 它對我有用:D
在 cmd.exe 中運行它。
for /f "tokens=2" %a in ('tasklist ^|findstr Nox.') do netstat -aon | findstr %a
它會打印出這樣的東西。
C:\Program Files (x86)\Bignox\BigNoxVM\RT>for /f "tokens=2" %a in ('tasklist ^|findstr Nox.') do netstat -aon | findstr %a
C:\Program Files (x86)\Bignox\BigNoxVM\RT>netstat -aon | findstr 15260
TCP 127.0.0.1:1209 127.0.0.1:58001 ESTABLISHED 15260
TCP 127.0.0.1:26966 0.0.0.0:0 LISTENING 15260
UDP 0.0.0.0:64800 *:* 15260
UDP 0.0.0.0:64801 *:* 15260
C:\Program Files (x86)\Bignox\BigNoxVM\RT>netstat -aon | findstr 11180
C:\Program Files (x86)\Bignox\BigNoxVM\RT>netstat -aon | findstr 16120
TCP 127.0.0.1:52001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:52001 127.0.0.1:1987 ESTABLISHED 16120
TCP 127.0.0.1:53001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:57001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:58001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:58001 127.0.0.1:1209 ESTABLISHED 16120
TCP 127.0.0.1:58001 127.0.0.1:1975 ESTABLISHED 16120
TCP 127.0.0.1:60001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:61001 0.0.0.0:0 LISTENING 16120
TCP 127.0.0.1:64001 0.0.0.0:0 LISTENING 16120
TCP 192.168.1.133:1245 157.240.14.32:443 ESTABLISHED 16120
TCP 192.168.1.133:1248 172.217.2.195:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1267 108.177.12.188:5228 ESTABLISHED 16120
TCP 192.168.1.133:1271 172.217.2.138:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1274 172.217.2.74:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1275 172.217.8.98:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1278 172.217.2.138:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1280 172.217.2.74:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1282 172.217.2.74:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1300 149.154.175.55:5222 ESTABLISHED 16120
TCP 192.168.1.133:1301 172.217.8.78:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1329 172.217.3.78:80 CLOSE_WAIT 16120
TCP 192.168.1.133:1436 172.217.2.138:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1437 172.217.8.74:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1439 172.217.8.74:443 CLOSE_WAIT 16120
TCP 192.168.1.133:1967 172.217.3.74:443 ESTABLISHED 16120
UDP 0.0.0.0:51197 *:* 16120
UDP 0.0.0.0:51198 *:* 16120
UDP 0.0.0.0:54730 *:* 16120
UDP 0.0.0.0:62578 *:* 16120
UDP 127.0.0.1:59001 *:* 16120
UDP 127.0.0.1:65001 *:* 16120
第三列是您的端口。
還要確保關閉USB調試。 這使用了不同的東西。
這里腳本的基本思想是找到所有名為 Nox.exe 的進程。 獲取他們的 PID,然后找到任何連接到 Nox.exe 進程的端口。
您現在將連接以下內容:
"c:\Program Files\Nox\bin\adb.exe" connect 127.0.0.1:52001
"c:\Program Files\Nox\bin\adb.exe" -s 127.0.0.1:52001 shell
轉到 NOX 安裝文件夾,用 cmd(命令提示符)打開 bin 目錄並粘貼這些代碼nox_adb.exe connect 127.0.0.1:62001
(WINDOWS USERS)
這對我有用。 (適用於窗戶)
C:\Users\YOUR_NAME\AppData\Local\Android\Sdk\platform-tools
adb connect 127.0.0.1:62001
像這樣
C:\Users\YOUR_NAME\AppData\Local\Android\Sdk\platform-tools>adb connect 127.0.0.1:62001
在@Faramarz Bayat 和@Mateusz 的幫助下
base.vbox
(這是一個 xml 文件)<Forwarding name . . .
<Forwarding name . . .
你會找到端口列表
hostport
端口,其中guestport=5555
adb connect 127.0.0.1:62001
連接設備(62001 是我的端口號)根據@infi 的回答 cd-ing into platform-tools 在 Windows 上幫助了我。 但是我需要一個可以在每次需要時輕松調用的命令。 因此,我在環境變量路徑中已有的目錄中打開了_adb.cmd
。
@echo off
cmd /c "cd %userprofile%\AppData\Local\Android\Sdk\platform-tools & adb connect 127.0.0.1:62001"
因此,無論何時我調用命令_adb
,它都會為我完成工作。
你可以簡單地運行
cd %userprofile%\AppData\Local\Android\Sdk\platform-tools & adb connect 127.0.0.1:62001
如果您需要一次,在您的終端上。
轉到PC中用戶的用戶名,然后是應用程序數據和本地android sdk,然后在adb下復制兩個文件,然后將其粘貼到程序文件nox bin上並替換它,就是這樣
我知道這是一個老問題,但對於許多開發人員來說似乎仍然是一個問題。
為我解決問題的方法是使用 Nox 的 bin 文件夾的路徑向環境變量添加一個 PATH 條目。 請注意,此路徑條目必須位於 Android SDK 的平台工具路徑條目之上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.