我的反應本機應用程序在Xcode模擬器中工作沒有問題,但是當我在物理設備,我的iPhone上運行時,出現問題。該應用程序啓動並停留在React Native啓動畫面上,10-15秒後應用程序崩潰/關閉。這是什麼原因以及如何防止它?反應本機應用程序卡在設備上的啓動畫面,但在模擬器中工作
回答
看來我發現了這個問題。根據http://facebook.github.io/react-native/releases/0.45/docs/running-on-device.html#running-your-app-on-ios-devices,當您在您的設備上構建並運行應用程序時,您的應用程序將從計算機上的打包程序加載js文件,以便您可以重新加載應用程序。這意味着您的設備必須連接到您的計算機,或者必須與計算機位於同一個WiFi網絡中。如果您的設備無法訪問打包程序,它將卡在啓動屏幕上並退出。
要在設備上可靠地運行,請編輯構建模式並構建發行版本。
您可能需要簽署該應用程序。
在項目導航器下,單擊您的應用程序。然後從項目和目標列表中選擇您的目標。在「常規」選項卡中,找到「簽名」部分。你需要在這裏指定一個團隊。
我試圖從互聯網上斷開我的iPhone,這一問題在以後的發佈會消失。
所以有些東西試圖做網絡的東西,造成延遲。 這是一個快速修復,但會做,直到我們找到具體的罪魁禍首。
我已經發布了這一段時間,但解決方案是刪除node_modules文件夾並運行npm install以獲取乾淨的文件夾。
應該完全可以在調試中,在設備上運行應用程序,而無需附加打包器!您必須使用react-native bundle
來創建脫機包,並將其添加到您的Xcode項目中。然後,當打包程序不可用時,您的應用程序應該回退到該軟件包。
這曾經是在部署到設備FB文檔,不知道爲什麼它不存在了。
樣品調用(我們index.ios.js
是打字稿放在./dist
):
react-native bundle --dev true --assets-dest ./ios --entry-file ./dist/index.ios.js --platform ios --bundle-output ios/main.jsbundle
此外,它顯然是必要告訴你的應用程序直接從捆綁運行,而不是嘗試訪問開發服務器,這似乎導致超時(我們有與OP相同的問題)。
註釋掉該行:
jsCodeLocation = // whatever
並添加此行:
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
我面對這個問題,我在那裏反應,本機啓動畫面。刪除它後,它正在工作
沒有它說我們正在使用這個軟件包。 –
我同意。但不知道爲什麼這個工作後刪除包。我添加了這個答案,因爲這解決了我的問題。 – Sujit
我遇到了同樣的問題。
我所做的是在Xcode去產品 - >計劃 - >編輯方案 - >選擇運行選項卡 - >更改構建配置來釋放(默認情況下它是調試模式)並運行在設備中的應用。
這是速度更快,運行它像一個原生應用。
- 1. 在iPhone模擬器上啓動EXC_BAD_ACCESS。應用程序在設備上工作
- 2. Android應用程序工作在模擬器,但設備失敗
- 3. 在模擬器上工作的Android應用程序,但在設備上
- 4. Android應用程序在模擬器上工作,但不在真實設備上
- 5. IOS應用程序在模擬器上工作,但不在設備上
- 6. 應用程序在模擬器上正常工作,但在設備上崩潰
- 7. android應用程序在模擬器上工作,但connectException在設備上
- 8. 應用程序在模擬器上正常工作,但在設備上崩潰
- 9. iOS應用程序在模擬器上工作,但不在真實設備上
- 10. 設備上的應用程序崩潰,但在模擬器上正常工作
- 11. 異常在設備應用程序啓動時,工作正常,在模擬器
- 12. 在模擬器中工作但不在設備中的Android應用程序
- 13. Monotouch應用程序不會在設備上啓動,但在模擬器中工作正常
- 14. 我的iPhone應用程序在設備上工作,但不是模擬器
- 15. 應用程序在模擬器上工作,但不是真正的設備
- 16. iPhone應用程序在設備中崩潰,但它在模擬器中工作
- 17. 反應本機應用程序「不幸停止」在Android模擬器啓動
- 18. 應用程序在模擬器上工作,但不在iPad上
- 19. 應用程序在模擬器上工作,但不在iPhone上
- 20. 應用程序在模擬器中工作,但在真實設備崩潰
- 21. ngCordova相機在模擬器上工作,但不在設備上
- 22. 應用程序在模擬器中工作,在設備上的白色屏幕
- 23. iphone:QuartzCore和動畫在模擬器工作,但不是在設備
- 24. 應用工作在模擬器,但不是在設備
- 25. Android應用程序在模擬器上工作,但不是在手機上
- 26. 應用工作在模擬器,但不是設備 - NSMutableArray的
- 27. 我的應用程序在android模擬器上工作,但不能在android設備上工作
- 28. 我的應用程序在模擬器上工作,但沒有在真實設備上工作
- 29. GetViewForHeader在模擬器中工作,但不在設備上工作
- 30. 我的應用程序崩潰,但在模擬器上工作
我有一個類似的。我的應用程序可以在iPhone 5S及以上的模擬器和設備上運行。然而,登錄應用程序在iPhone 5和4S上自行關閉後。 – milkersarac
我面對完全一樣的問題,我的應用程序工作在iPhone模擬器完全正常,但第一次加載後,我的設備上不起作用。 –
我正面臨類似的問題。有人能解決這個問題嗎? – Nikant