我有一个现有的Android应用。我已根据docs将React Native v0.30活动添加到项目中(除了我用Activity
替换了AppCompatActivity
类)。在开发模式下一切正常。但是当我创建应用程序的发布版本时,看起来应用程序的React Native部分仍然处于调试模式,当我打开React Native支持的活动时,我在logcat中收到以下错误消息:
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Could not connect to development server.
这意味着该应用尝试连接到打包器,而不是以某种方式使用捆绑包。
APK正在签名,本机应用程序另外构建为发布。我是否必须以某种方式手动创建JavaScript包并将其添加到项目中?我错过了一些明显的东西吗?
我使用以下命令构建和部署应用程序:
cd android && ./gradlew installRelease
我认为这应该将JavaScript文件捆绑到APK中,并在活动启动时使用它们。
更新
顺便说一下,我已经在应用程序的gradle配置buildTypes
中得到了这个内容:
release {
signingConfig signingConfigs.release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
答案 0 :(得分:4)
您是否在installRelease
之前执行了此操作:
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/
有一个标志 - dev false