在没有调试器的情况下React Native黑屏

时间:2018-05-22 14:50:29

标签: react-native react-native-android react-native-ios

我已经有一个用React Native制作的iOs应用程序,我开始将它移植到Android。

该应用在iOS和Android上运行正常,并启用了Chrome调试功能。如果没有调试,应用程序将打开一个空白屏幕,其中没有任何内容。

这是我在尝试react-native log-android

时获得的日志
05-22 23:09:58.703  7831  7921 D ReactNative: Initializing React Xplat Bridge.
05-22 23:09:58.704  7831  7921 D ReactNative: Initializing React Xplat Bridge before initializeBridge
05-22 23:09:58.718  7831  7921 D ReactNative: Initializing React Xplat Bridge after initializeBridge
05-22 23:09:58.718  7831  7921 D ReactNative: CatalystInstanceImpl.runJSBundle()
05-22 23:09:58.718  7831  7923 D ReactNative: ReactInstanceManager.setupReactContext()
05-22 23:09:58.718  7831  7923 D ReactNative: CatalystInstanceImpl.initialize()
05-22 23:09:58.719  7831  7923 D ReactNative: ReactInstanceManager.attachRootViewToInstance()
05-22 23:09:59.177  7831  7831 D ReactNative: CatalystInstanceImpl.destroy() start
05-22 23:09:59.243  7831  7831 D ReactNative: CatalystInstanceImpl.destroy() start

在设备(Android)上,我收到以下错误,屏幕为空: enter image description here

如上所述,当我激活Chrome调试时,应用程序运行正常并成功呈现。

我正在使用:

"react": "^16.3.0-alpha.1",
"react-native": "0.54.4"

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

这是因为您使用调试包,所以应该输出发布包并使用它。

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

这是ios命令

react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ./ios/main.jsbundle --assets-dest ./ios/a