如果签名和发布,React Native App会崩溃。在调试模式下正常工作

时间:2016-09-03 00:16:49

标签: react-native

如果签名和发布,React Native App会崩溃。在调试模式下正常工作。它不会在屏幕上抛出任何错误。它只是崩溃了。当我看着猫的日志。没错。

我也尝试使用--info构建apk,但在崩溃时没有其他信息。我还尝试通过设置minifyEnabled false来构建APK。

通过USB连接手机以调试模式运行应用程序时,它可以正常工作。 我尝试使用--debug创建apk但我无法将其安装到我的手机上,当我尝试使用应用安装程序进行安装时,它说解析错误。

我收到了以下logcat错误。这是什么意思?

09-03 11:03:07.968 W/ActivityManager(1344):   Force finishing activity com.myapp/.MainActivity


09-03 11:03:08.012 W/BroadcastQueue(1344): Skipping deliver [background] BroadcastRecord{cb72147 u-1 android.net.conn.CONNECTIVITY_CHANGE} to ReceiverList{7bf2161 22421 com.myapp/10100/u0 remote:b9cdcc8}: process crashing

09-03 11:03:08.035 W/ActivityManager(1344):  Dismiss app error dialog : com.myapp


09-03 11:03:13.095 I/WindowState(1344): WIN DEATH: Window{3f22c22 u0 /com.myapp.MainActivity}

3 个答案:

答案 0 :(得分:1)

我终于找到了原因。有一个名为react-native-material-design-searchbar的模块导致了这个问题。奇怪的是,如果从该模块直接复制SearchBar.js并使用它,即使在发布中也可以正常工作,但如果使用模块作为直接导入,则它不能仅在发布模式下工作。太奇怪了。 SearchBar很好,所以现在我通过将文件复制到我的项目直接使用。

答案 1 :(得分:0)

根据我对本机反应的经验,我曾经像你一样得到同样的错误。为了解决这个问题,我只是逐行遵循文档,它工作正常......

建立发布应用程序,您需要首先签署apk。之后就跑了

  

./ gradlew assembleRelease

将发布应用安装到手机上。

Doc Here

答案 2 :(得分:0)

我通过卸载uglifyjs并重新安装最新版本(使用NPM)修复了此错误。