安卓上使用反应原生的空白白屏(仅发布)



我的应用程序在调试模式下在模拟器上运行良好。当我尝试在设备上使用签名的APK或在模拟器上以发布模式运行它时,请使用:

react-native run-android --variant=release

它只是给出一个空白的白屏并且不会加载。

我正在使用React-Native-Navigation和React-Native-Firebase,这可能会也可能不会导致这个问题。

我认为我确实看到的一个错误与Firebase有关:

W/GooglePlayServicesUtil:Google Play服务已过时。 需要 11717000 但找到10298470 11-20 11:24:04.624 16106-16106/?带/FA:

failed to send app launch看起来确实不祥。

编辑:我不太确定上述错误是否真的导致在我的设备上运行发布版本时出现空白白屏。此消息显示在模拟器中,但我的应用可在模拟器上运行。在我的设备上,我看到Google Play服务的版本是11.7.46,我认为应该可以正常工作。

还有其他什么会导致我的应用程序仅在发布时出现空白白屏吗?

编辑2:

这次我发现了另一个错误(此后我降级到旧版本的 react-native-firebase 2.2)

11-25

12:11:07.278 5281-5295/com.spectrum E/FirebaseCrash:无法加载崩溃报告 com.google.android.gms.internal.mn:.com.google.android.gms.dynamite.DynamiteModule$zzc:远程加载失败。未找到本地回退。 at com.google.android.gms.internal.ml.zzFk(未知来源) at com.google.firebase.crash.zzc.zzFi(未知来源) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818) 原因:com.google.android.gms.dynamite.DynamiteModule$zzc:远程加载失败。未找到本地回退。 ...

编辑3:

以下是来自app.gradle的依赖项:

dependencies {
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.android.support:appcompat-v7:25.0.1"
compile "com.facebook.react:react-native:+"  // From node_modules
compile project(':react-native-navigation')
// RNFirebase required dependencies
compile(project(':react-native-firebase')) {
transitive = false
}
compile "com.google.firebase:firebase-core:11.0.4"
// RNFirebase optional dependencies
compile "com.google.firebase:firebase-crash:11.0.4"
compile "com.google.firebase:firebase-messaging:11.0.4"
// If you are receiving Google Play API availability issues, add the     following dependency
//    compile "com.google.android.gms:play-services-base:11.0.4"
}

正如错误所说:

谷歌播放服务已过时。需要 11717000,但找到10298470

这意味着您拥有不同版本的谷歌播放服务。我假设您使用的是最新的Firebase,这是Firebase 11.6.0,但是您使用的是Google Play服务版本10.2.9,所需的版本是11.7.1。

来自 Firebase 文档(在先决条件中):

运行 Android 4.0(冰淇淋三明治)或更高版本以及 Google Play 服务 11.6.0 或更高版本

的设备

因此,您要么需要下载最新版本的Google Play服务,要么在build.gradle文件中降级Firebase

。您目前拥有此版本的 Firebase:

'com.google.firebase:firebase-core:11.6.0'

降级(也许)为:

'com.google.firebase:firebase-core:10.2.0'

如果你降级firebase-core,那么你也必须降级(在build.gradle中)firebase-auth/firebase-storage/firebase-database

正如你看到的日志,谷歌播放服务已过时。需要 11717000,但发现10298470,这表明此错误随较旧的播放服务一起出现。

当前版本是 11.6.0,因此您需要更新 build.gradle 文件并进行同步。

'com.google.firebase:firebase-core:11.6.0'

相关内容

  • 没有找到相关文章