我有一个用于听有声读物的应用程序。 出于统计目的,我创建了一个函数,每 6 秒向服务器发送一次数据。 利用这些数据,我创建了一个仪表板,在其中显示有关书籍的所有数据。
这在 iOS 上完美运行,但在 Android 上则不起作用。您可以给我一些建议吗,以便我可以完成这项工作。
我尝试使用Expo BackgroundFetch,但没有成功。
这就是我的函数的样子。
try {
await fetch(`${API_URL}`, {
method: 'POST',
headers: {
'API-KEY': API_KEY,
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
user_token: user.user_token,
chapter_id: currentChapter?.id,
time: parseInt(Math.floor(position)),
}),
});
} catch (error) {
Alert.alert('Error. ', [{ text: 'OK' }]);
}
我已经设法用 Expo BackgroundFetch 来完成它。我想在 6 秒后调用,但使用 BackgroundFetch 我只得到了 1 分钟,这是可以接受的。