React Native Android应用程序白屏无法启动

Posted

技术标签:

【中文标题】React Native Android应用程序白屏无法启动【英文标题】:React Native Android app white screen won't start 【发布时间】:2017-06-30 16:12:20 【问题描述】:

我在运行我的 android 应用程序时收到以下错误日志:http://pastebin.com/1jHEfdQ3 该应用程序有时会在模拟器中崩溃,但大多数时候它只是显示白屏。我可以 console.log 一两件事,直到应用程序没有响应。 R-R 刷新不起作用。开发工具都不起作用。我现在不知道该怎么做。

我正在运行 react native 0.38.0

编辑:

我已经尝试清理我的 gradle 并删除并重新安装我的节点模块。

需要注意的是,我使用的是 React Native Navigation,这意味着我必须将 MainApplicationMainActivity 修改为以下内容:

主活动:

package com.prayerrequest;

import com.facebook.react.ReactActivity;
import com.reactnativenavigation.NavigationApplication;
import com.airbnb.android.react.maps.MapsPackage;
import com.cmcewen.blurview.BlurViewPackage;
import io.realm.react.RealmReactPackage;
import com.reactnativenavigation.controllers.SplashActivity;


public class MainActivity extends SplashActivity 


主应用程序:

package com.prayerrequest;

import com.facebook.react.ReactPackage;

import com.cmcewen.blurview.BlurViewPackage;
import io.realm.react.RealmReactPackage;
import com.airbnb.android.react.maps.MapsPackage;

import com.reactnativenavigation.NavigationApplication;

import java.util.Arrays;
import java.util.List;

  public class MainApplication extends NavigationApplication 
    @Override
     public boolean isDebug() 
         // Make sure you are using BuildConfig from your own application
         return BuildConfig.DEBUG;
     

     @Override
     public List<ReactPackage> createAdditionalReactPackages() 
        return Arrays.<ReactPackage>asList(
          new RealmReactPackage(),
          new BlurViewPackage(),
          new MapsPackage()
        );
     
  

我已经在 React Native 的问题页面 here 上发帖了

【问题讨论】:

Couldn't load memtrack module Logcat Error的可能重复 我也在使用 react-native-navigation 并且我也有使用 rn 0.46.3 进行测试的问题。所以也可能是 react-native-navigation 的问题。 【参考方案1】:

问题似乎是“无法加载 memtrack 模块(没有这样的文件或目录)”

模拟器似乎有问题。

这是我的全功能模拟器的配置:

可以在这里找到很多其他建议:

Couldn't load memtrack module Logcat Error

【讨论】:

感谢您的回复。我已经尝试了所有这些建议,但没有任何效果。由于该应用程序实际上正在运行,我不确定它是否与该错误有关。 我在答案中添加了我的模拟器的配置。也许这有帮助。在我启动并运行我的应用程序之前,我还必须修复一些白屏。 好的,谢谢,我会试试的。需要注意的是,我插入了一个谷歌平板电脑,那里也有一个白屏。 尝试运行adb logcat 并观察模拟器和真实设备上的任何错误或警告。我为我的模拟器使用了 GoogleApi 系统映像,但普通的 x86_64 应该足够了。我需要谷歌地图,这就是我使用该系统图像的原因。 以上日志来自logcat。我尝试了不同的 RN 版本并清理了我的构建和节点模块,但仍然收到此错误。这是更新的日志:pastebin.com/96ww1f8S【参考方案2】:

我遇到了类似的问题。当我试图让它在设备上运行时,我会得到这个白屏。

问题是当我执行 adb devices 或 react-native run-android 时,我会得到“ADB 未被识别为内部或外部命令”。

所以我的解决方法是将 adb.exe 的父目录的路径添加到我的环境变量中,然后重新启动我的命令提示符。然后我运行 react-native run-android 并在启动时不再出现红屏显示完全无用的错误消息调用 AppRegistry.runApplication 时出错! :)

所以我发现 ADB 位于我的文件夹中:

C:\Users\dell\AppData\Local\Android\sdk\platform-tools\adb.exe 我在 Windows 10 系统上。 dell 是我的计算机用户名。

所以我去了系统环境变量然后找到“路径”然后单击“编辑”,然后单击“新建”并添加到“C:\Users\dell\AppData\Local\Android\sdk\platform-tools”中。

【讨论】:

以上是关于React Native Android应用程序白屏无法启动的主要内容,如果未能解决你的问题,请参考以下文章

(Android)react-native-splash-screen实践-解决react-native打包好后启动白屏的问题

react-native-splash-screen集成实践(ios & android)

React Native 应用先显示白屏,然后进入应用

WebView 不一致地显示白屏 react-native

react-native在Anroid真机运行时可能会遇到白屏的情况解决办法

白标 React Native 应用程序