使用 POST 每周向服务器发送数据
Sending data weekly to the server using POST
我正在开发加速度计应用程序。我的应用程序正在将数据保存在本地存储,即用户的智能手机上。我想将它发送到服务器,但我想每周发送一次。有没有什么功能可以在一周后自动发送数据
我正在为此使用 Android Studio。抱歉,我是新手,请帮忙。
谢谢。
您使用WorkManager
架构组件来实现它。安排 PeriodicWorkRequest
如下:
创建工人class:
public class MyWorker extends Worker {
@Override
public Worker.WorkerResult doWork() {
// Send your data to server
// Indicate success or failure with your return value:
return WorkerResult.SUCCESS;
// (Returning RETRY tells WorkManager to try this task again
// later; FAILURE says not to try again.)
}
}
安排工作:
PeriodicWorkRequest periodicWork = new
PeriodicWorkRequest.Builder(MyWorker.class, 7, TimeUnit.DAYS)
.build();
WorkManager.getInstance().enqueue(periodicWork);
这会创建一个 PeriodicWorkRequest 以 运行 每 7 天定期发送一次。您还可以设置一些额外的约束,例如仅在互联网连接可用时才执行此任务。这将在 7 天内执行一次任务,并且仅当设备有互联网连接时。
您应该试试 AlarmManager
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, Seconds, AlarmManager.INTERVAL_DAY * 7, pendingIntent);
另外,创建接收pendingIntent
的BroadcastReceiver,如果您有任何问题,请在下方评论
我正在开发加速度计应用程序。我的应用程序正在将数据保存在本地存储,即用户的智能手机上。我想将它发送到服务器,但我想每周发送一次。有没有什么功能可以在一周后自动发送数据
我正在为此使用 Android Studio。抱歉,我是新手,请帮忙。
谢谢。
您使用WorkManager
架构组件来实现它。安排 PeriodicWorkRequest
如下:
创建工人class:
public class MyWorker extends Worker {
@Override
public Worker.WorkerResult doWork() {
// Send your data to server
// Indicate success or failure with your return value:
return WorkerResult.SUCCESS;
// (Returning RETRY tells WorkManager to try this task again
// later; FAILURE says not to try again.)
}
}
安排工作:
PeriodicWorkRequest periodicWork = new
PeriodicWorkRequest.Builder(MyWorker.class, 7, TimeUnit.DAYS)
.build();
WorkManager.getInstance().enqueue(periodicWork);
这会创建一个 PeriodicWorkRequest 以 运行 每 7 天定期发送一次。您还可以设置一些额外的约束,例如仅在互联网连接可用时才执行此任务。这将在 7 天内执行一次任务,并且仅当设备有互联网连接时。
您应该试试 AlarmManager
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, Seconds, AlarmManager.INTERVAL_DAY * 7, pendingIntent);
另外,创建接收pendingIntent
的BroadcastReceiver,如果您有任何问题,请在下方评论