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,这意味着我必须将 MainApplication
和 MainActivity
修改为以下内容:
主活动:
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)