React Native-从后台打开时,应用有时会冻结

问题描述 投票:2回答:1

[最近,我在IOS应用中发现了一些奇怪的错误(到目前为止,在Android上我没有看到该问题)。

[如果在我的真实设备上安装了发布模式(即使使用App Store中的生产应用程序,也会发生相同的问题,并且在后台运行了例如1.2小时的情况下打开应用程序-我的应用程序冻结了好几个秒(我可以滚动列表,但Touchables无法正常工作)。有时会冻结5秒,有时会冻结10秒...冻结时间不是恒定的。

对于导航,我使用React Native导航。首先,我认为这可能是一个导航问题-但是我可以在选项卡中导航。因此,我可以浏览选项卡,可以在选项卡中滚动FlatList,但是列表项不可触摸-我可以单击它们,但不会调用onPress。冻结结束几秒钟后-我的应用执行了所有待处理的导航。即,它将打开在冻结应用程序时点击的所有屏幕...

谁有这种问题?我该如何解决呢?请帮助,我在这里停留了几天:(

本机:0.59.10;反应:16.8.3;

提前感谢

javascript ios react-native background freeze
1个回答
0
投票

这件事发生在我身上,但是我的解决方法很愚蠢,以至于您的问题很可能与其他问题有关。我花了整整一天的时间和一整夜的时间才弄清楚,所以在偶然的机会中可能会有所帮助,这是发生在我身上的事情...

我的应用程序根目录有一个用于初始化某些功能的函数。

 useEffect(() => {
    dispatch(init())
 }, []);

在某些真正离奇的行为中,我在init函数中添加了以下内容:>

setInterval(() => { dispatch(setTabsReady(true)) },0)

我的实际意思是

setTimeout(() => { dispatch(setTabsReady(true)) },0)

令人惊讶的是,当我切换到另一个应用程序后重新打开该应用程序时,此宝石似乎只影响事物。

这是一种真正具有破坏性的东西,引起了我仅在事后才意识到的其他各种奇怪行为的各种形式。

© www.soinside.com 2019 - 2024. All rights reserved.