除了 react-native-background-task 之外,还有其他方法可以在 React Native 中执行后台任务吗?

Posted

技术标签:

【中文标题】除了 react-native-background-task 之外,还有其他方法可以在 React Native 中执行后台任务吗?【英文标题】:Is there any way to do background tasks in React Native other than react-native-background-task? 【发布时间】:2019-04-17 10:41:04 【问题描述】:

我正在尝试在我的 React Native 应用程序中执行每 X 分钟,如果应用程序关闭,应用程序会获取我的应用程序的一些数据。或者更类似,我想在AsyncStorage 中保存一个值。

假设react-native-background-task 可以做到这一点,但不幸的是,该项目因许多错误和错误而被放弃,导致无法使用它。

还有其他方法吗?

【问题讨论】:

你尝试过 Headless js 吗? @MasukHelalAnik Headless js 仅适用于 android,我需要两个平台 :( @SmoggeR_js 你有没有为这两种操作系统找到解决方案? 不,我没有... 【参考方案1】:

对于 android,后台服务工作正常,其 RN 实现形式为 Headless JS task。对于 ios,RN 中没有这样的现成库。 iOS 的限制性不允许应用程序立即承担操作系统的作业队列控制,但在本机操作系统 API 中,根据业务需求有一些方法。

您可以参考this 以更好地了解您的用例使用哪个选项,并且还可以为 RN 提供一个桥接模块。

【讨论】:

在搜索了很多关于它的信息后,我的结论是你的答案,这就是我把这个答案选为正确答案的原因。无论如何,很遗憾地看到我们无法做那种事情。谢谢!【参考方案2】:

你试过react-native-queue吗。我认为它会满足你的要求。

Click here For complete guide.

你也可以试试react-native-background-job

Click Here for Complete Guide

【讨论】:

如果你专注于它,你会发现它有很多问题,它使用 react-native-background-task 所以我不会工作。那是关于 react-native-queue 的。关于后台作业,这仅适用于android 看来您将不得不重用一些现有的 Java 代码并在 react native 中使用。facebook.github.io/react-native/docs/… 无论如何...真正的问题不是Android,而是iOS!

以上是关于除了 react-native-background-task 之外,还有其他方法可以在 React Native 中执行后台任务吗?的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 除了 '/' 之外的所有路由都返回 404

SQLite:...除了...随机排序()

除了“你好”的东西,还有啥好的Phonegap教程吗? [关闭]

除了加载行子集之外,使用 NSFetchedResultsController 有啥好处

Laravel 唯一的验证规则,除了不工作

jQuery检查表单输入是不是为空,除了一个