繁体   English   中英

反应原生应用程序卡在启动画面上

[英]react-native application stuck on splash screen

最近我的应用程序停止加载

它构建,metro加载依赖项,然后没有任何反应。 它只是卡在闪屏上。

我使用的是真正的Android设备。

我尝试运行“adb shell input keyevent 82”来启动开发人员菜单并使用远程调试器,但开发人员菜单没有提示输出。

并且该设备存在于adb设备中,并且可以执行诸如“adb shell input keyevent 3”之类的命令,其触发设备的主页按钮。

地铁就像这张照片:

被困地铁

有没有人经历过类似的问题或者有一个线索为什么它会像这样?

编辑:

到目前为止,有助于解决问题的方法是:

  • 重新启动计算机

  • 评论以下行,这些行启用了反应导航提供的NavigationService。(在应用程序构建和启动后,如果我取消注释这些行,它再次与它们一起工作)

    ref = {navigatorRef => {NavigationService.setTopLevelNavigator(navigatorRef); }}

所以这些解决方案有助于解决问题,但有没有人知道触发问题的原因是什么?

您的NavigationService类看起来像这样吗?


import { NavigationActions } from 'react-navigation';

let _navigator;

function setTopLevelNavigator( navigatorRef ){
    _navigator = navigatorRef;
}

function navigate( routeName, params ){
    _navigator.dispatch(
        NavigationActions.navigate({
            routeName,
            params
        })
    );
}

export default {
    navigate,
    setTopLevelNavigator
};

如果您能提供控制台日志信息,那就太好了。

My code looks like this:

import { NavigationActions } from 'react-navigation';

let _navigator;

export const setTopLevelNavigator = (navigatorRef) => {
    console.log("WILL SET TOP LEVEL NAVIGATOR WITH", navigatorRef);
    _navigator = navigatorRef;
}

export const navigate = (routeName, params) => {
    _navigator.dispatch(
        NavigationActions.navigate({
            routeName,
            params
        })
    )
}

export default{
    navigate,
    setTopLevelNavigator
}

我已经导出了这些函数,因为之前我采用了不同的方法,但实际上忘记了之后删除它们的导出。

你认为这可能是问题的原因吗? 当问题出现时我没有得到控制台日志错误,因为应用程序没有移动到启动画面并且不提供开发人员菜单,所以我无法在该状态下进行调试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM