React-Native Android - 发布 apk "has stopped" - 寻找 "index.ios"
React-Native Android - Release apk "has stopped" - Looking for "index.ios"
我构建了一个简单的 android react-native 应用程序,当我 运行 react-native run-android
.
我已按照此处的说明进行操作 https://facebook.github.io/react-native/docs/signed-apk-android.html 以生成已签名的 apk。
当我使用 react-native run-android --variant=release
尝试此版本的 apk 时,我得到 "Unfortunately, has stopped"。
我如何知道发生了什么?某处有日志吗?
我通过 google 找到的内容与调试有关。但我大概不能,因为这是一个发布版本。
更新
我知道如何查看日志 - adb logcat *:S ReactNative:V ReactNativeJS:V
我得到以下内容
10-14 11:24:42.129 29039 29060 E ReactNativeJS: Requiring unknown module "./index.ios".
10-14 11:24:42.177 29039 29060 E ReactNativeJS: Module AppRegistry is not a registered callable module (calling runApplication)
10-14 11:24:42.534 29039 29060 E ReactNativeJS: Module AppRegistry is not a registered callable module (calling unmountApplicationComponentAtRootTag)
为什么我的 android 发布 apk 寻找任何 ios 相关的东西?我配置有误吗?
在回答我自己的问题时,我将其追溯到我在 GitHub 上找到的一个组件。 index.android.js 只包含:
module.exports = require('./index.ios');
我最终将我的应用程序剥离回最低限度的内容,将其部署到 phone 并进行测试。然后在重新部署之前添加更多以前损坏的内容。有点像 git bisect
但更多的是手动操作!
TL;DR - 如果我在所有 .js 文件中搜索 index.ios,包括 node_modules 中的文件,我可能会找到它。
我构建了一个简单的 android react-native 应用程序,当我 运行 react-native run-android
.
我已按照此处的说明进行操作 https://facebook.github.io/react-native/docs/signed-apk-android.html 以生成已签名的 apk。
当我使用 react-native run-android --variant=release
尝试此版本的 apk 时,我得到 "Unfortunately, has stopped"。
我如何知道发生了什么?某处有日志吗?
我通过 google 找到的内容与调试有关。但我大概不能,因为这是一个发布版本。
更新
我知道如何查看日志 - adb logcat *:S ReactNative:V ReactNativeJS:V 我得到以下内容
10-14 11:24:42.129 29039 29060 E ReactNativeJS: Requiring unknown module "./index.ios".
10-14 11:24:42.177 29039 29060 E ReactNativeJS: Module AppRegistry is not a registered callable module (calling runApplication)
10-14 11:24:42.534 29039 29060 E ReactNativeJS: Module AppRegistry is not a registered callable module (calling unmountApplicationComponentAtRootTag)
为什么我的 android 发布 apk 寻找任何 ios 相关的东西?我配置有误吗?
在回答我自己的问题时,我将其追溯到我在 GitHub 上找到的一个组件。 index.android.js 只包含:
module.exports = require('./index.ios');
我最终将我的应用程序剥离回最低限度的内容,将其部署到 phone 并进行测试。然后在重新部署之前添加更多以前损坏的内容。有点像 git bisect
但更多的是手动操作!
TL;DR - 如果我在所有 .js 文件中搜索 index.ios,包括 node_modules 中的文件,我可能会找到它。