React Native Android 发布 apk 是调试,不是发布

Posted

技术标签:

【中文标题】React Native Android 发布 apk 是调试,不是发布【英文标题】:React Native Android release apk is debug, not release 【发布时间】:2016-12-23 00:02:46 【问题描述】:

我有一个现有的 android 应用程序。我已经根据docs 将 React Native v0.30 活动添加到项目中(除了我用AppCompatActivity 替换了Activity 类)。在开发模式下一切正常。但是当我创建应用程序的发布版本时,应用程序的 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 中,并在 Activity 启动时使用它们。

更新:

顺便说一句,我在应用程序的 gradle 配置中的 buildTypes 中有这个:

    release 
        signingConfig signingConfigs.release
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    

【问题讨论】:

【参考方案1】:

你在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

【讨论】:

就是这样!谢谢!

以上是关于React Native Android 发布 apk 是调试,不是发布的主要内容,如果未能解决你的问题,请参考以下文章

react-native 跳转到ios/android 权限设置界面

在react-native中,我如何在ios和android的图像上添加水印

[react-native]Getting Started for Android on Windows

Android 中不安全的 HostnameVerifier - React Native

[react-native]Getting Started for Android on Windows

React-Native 开发 android & ios App,共享一份代码