1. 程式人生 > >React—Native開發之 Could not connect to development server(Android)解決方法

React—Native開發之 Could not connect to development server(Android)解決方法

寫在最前面:

    本來,我是有一篇部落格 RN開發之BUG 總結(持續更新) 來專門總結自己在React-Native開發中遇到的各種BUG 以及決辦法的。

但是,由於 Could not connect to development server是我深惡痛絕的一個超級大BUG。

為什麼這麼說呢?

      因為這個BUG並不容易在網上找到解決方法。網上確實有這個BUG,但是大部分都是解決IOS開發中遇到的,一

外的網站中也在討論這個問題,好不容易找到點和我問題相似的,還並沒有給出確定的解決方案,實在是讓我鬱

悶,且這個BUG困擾了我好久。今天就將自己的解決辦法分享出來,來幫助更多的網友。

1、我們首先看一下這個大紅屏錯誤吧。如圖所示:


先來翻譯:

連線不到開發的伺服器。

請按照以下的步驟來修復此問題:

  • 確保包伺服器在執行
  • 確保你的裝置或者模擬器連線著電腦,並且手機打開了USB除錯模式,然後在cmd中執行adb devices來檢視已經連線好的裝置列表
  • 確保飛航模式是關閉的
  • 如果是使用真機來開發,輸入 adb reverse tcp:8081 tcp:8081來檢查裝置
  • 輸入IP:8081(這個大家都會)

解決方法:

1、首先檢查包伺服器是否執行正常。

       在專案資料夾下輸入react-native start或者npm start均可開啟伺服器,但是我們需要在PC端確認包伺服器是否執行正常。檢查網址為:http://localhost:8081/index.android.bundle?platform=android

(1)說說我遇到的問題,開啟包伺服器之後,cmd中顯示如下:


出現React packager ready就走不動了。

      當我看開http://localhost:8081/index.android.bundle?platform=android網址 時,沒有正常顯示,但是也沒

顯示“該網頁無法訪問”,只是一直在轉圈圈重新整理網頁,就是打不開。

現在我定位了自己的問題(大哭難怪以前輸入IP:8081並沒有什麼鳥用)

如何解決?

答:經過我的觀察,包伺服器中使用到了node,所以應該和node版本和配置有一定的關係。所以我就卸掉

node,重新安裝了最新版本的node,之後包伺服器開啟,網頁可以正常訪問,如下所示:


2、檢查硬體連線,以及使用adb devices來檢視是否連線成功。

3、飛航模式關閉

4、在cmd中輸入 adb reverse tcp:8081 tcp:8081,結果如下:


當我看到error:closed我就猜到,大哭原來我的問題出在這兒。怎麼辦呢?

個人認為解決辦法如下:

  • 手機-設定-應用程式-開發-usb除錯開啟再關閉一次
  • 重啟手機,usb除錯開啟再關閉一次
  • 在cmd下Try "adb kill-server" and then "adb start-server"

本人測試機為android 5.0+系統,使用第二種方法解決問題。結果如下:


5、搖一搖手機選擇Dev Settings 輸入IP:8081的方法就不多說了。

       至此,解決了Could not connect to development server(Android)的問題,本人的測試機為魅藍metal,系統是

Android 5.0+的系統,所以可能和各位小夥伴的情況不太一樣,大家可以參考參考。文章寫得不太好,請見諒。

如果對你有幫助,記得點贊哦大笑