2016-11-08 91 views
7

我試圖運行我創建的反應原生應用程序。當我在手機中運行它時,我正在獲取下面的屏幕。無法獲得BatchBridge,請確保您的包已正確打包

enter image description here

我試圖運行「反應原生啓動」,當我運行它,我得到下面的輸出。

enter image description here

雖然它停止在「初始化軟件包管理器」我跑中的另一終端「反應天然運行機器人」。我仍然得到相同的BatchBridge錯誤。當我點擊錯誤屏幕上的刷新按鈕時,我會看到下面的屏幕。

enter image description here

我在做什麼錯在這裏?在我的代碼中,我只有一個console.log。只是一個新的項目開始。任何意見將不勝感激。我試過參考error "Could not get BatchedBridge, make sure your bundle is packaged properly" on start of app的答案,但它是一組Linux命令。

+0

是您的手機和計算機在同一網絡上嗎? –

+0

不,但爲什麼它應該在這種情況下?我只是運行一個程序,記錄「你好世界」,沒有網絡連接 – mayooran

+0

這是錯誤,當我忘記在我的手機(Mac OS)上設置開發設置時,同一網絡和項目的大小的電話和計算機沒關係。 –

回答

10

如果您正在運行Android 5.0以上版本,請運行在命令提示符下連接到開發服務器:

adb reverse tcp:8081 tcp:8081 

然後,通過搖動設備從開發菜單中選擇「重新加載JS」。

如果上述步驟不工作,或者你正在運行的Android版本較低,請嘗試以下通過Wi-Fi連接:

  1. 訪問開發菜單,進入「開發設置」 。
  2. 選擇「調試設備的服務器主機」。
  3. 鍵入您的機器IP地址和端口例如10.0.0.1:8081
  4. 嘗試從Developer菜單中選擇'Reload JS'重新加載應用程序。
+0

@MarcoScabbiolo你是對的,只有鏈接答案可能不是提供一個長期受益的答案的好方法。我編輯了我的答案,以便更加簡潔。 –

2

搖動手機以獲得「開發設置」>調試服務器主機&設備端口>「您的IP地址:8081」例如。 192.XXX.XX.xx:8081"

它解決了我的問題 :)

+0

搖動你的手機是什麼意思? – Panther

+0

只需在進入應用程序後左右搖動手機即可 –

1

殺死你的設備上的應用程序,然後打開終端,運行以下命令

react-native start 

然後。從您的設備再次打開該應用程序,它就會開始工作。

如果您正在使用通過USB的Android設備,並拔掉它,你可能需要先運行

adb reverse tcp:8081 tcp:8081 

希望它能幫助你。

0

您正在使用損壞的jsbundle文件。使用

react-native bundle --platform android --dev true --entry-file index.android.js --bundle-output music.jsbundle 
0

重新創建jsbundle您必須在您的資產文件夾中下載index.android.bundle文件。

打開你的項目目錄並按住shift鍵+右鍵,打開命令提示符。 然後粘貼此命令:

 
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/