我有一个React Native应用程序正在做一些任务,并发送数据到后端。我希望这个任务继续运行,即使应用程序关闭,因为在应用程序应该继续运行在设备的后台。注意:此应用程序只能在android中运行
unhi4e5o1#
使用原生功能总是好的。如果你想在后台执行JavaScript任务。那么使用Headless JS https://reactnative.dev/docs/headless-js-android来实现它
0g0grzrc2#
你可以使用这个库https://github.com/transistorsoft/react-native-background-fetch。有很好的文档说明如何设置它,以及你必须做什么,以确保应用程序将执行任务,即使在后台/杀死。这是一个灰色地带,后台任务通常不是100%可靠的,但这个库提供了很好的解决方案。
332nm8kg3#
我找到了一个Libarry,它在ANDROID中工作得很好,即使屏幕关闭https://github.com/ocetnik/react-native-background-timer遵循安装程序并调用函数,如示例====〉
import BackgroundTimer from "react-native-background-timer"; useEffect(() => { const timeoutId = BackgroundTimer.runBackgroundTimer(async () => { callYourFunction(); // Call your Function Here }, 10000); // 10000 is 10 Seconds return () => BackgroundTimer.clearInterval(timeoutId); }, []);
这也适用于iOS,但停止,如果你保持应用程序在后台超过2分钟,我不知道为什么请如果有人知道如何在IOS中有这个...请帮助。我还尝试了github.com/Rapsssito/react-native-background-actions图书馆这在IOS中也有相同的问题它不工作在Android..我使用的Android 12
3条答案
按热度按时间unhi4e5o1#
使用原生功能总是好的。如果你想在后台执行JavaScript任务。那么使用Headless JS https://reactnative.dev/docs/headless-js-android来实现它
0g0grzrc2#
你可以使用这个库https://github.com/transistorsoft/react-native-background-fetch。有很好的文档说明如何设置它,以及你必须做什么,以确保应用程序将执行任务,即使在后台/杀死。这是一个灰色地带,后台任务通常不是100%可靠的,但这个库提供了很好的解决方案。
332nm8kg3#
我找到了一个Libarry,它在ANDROID中工作得很好,即使屏幕关闭
https://github.com/ocetnik/react-native-background-timer
遵循安装程序并调用函数,如示例====〉
这也适用于iOS,但停止,如果你保持应用程序在后台超过2分钟,我不知道为什么
请如果有人知道如何在IOS中有这个...请帮助。
我还尝试了github.com/Rapsssito/react-native-background-actions图书馆
这在IOS中也有相同的问题
它不工作在Android..我使用的Android 12