如何解决如何每天早上9点在Android中运行PeriodicWorkRequest?
我正在使用PeriodicWorkRequest在数据库中搜索最新事件。为此,我需要每天早上9点咨询数据库。 但是我找不到办法。这是我第一次使用PeriodicWorkRequest并尝试找到解决方案,但是我只能使用Alarm Manager来找到它。但这不必是9:00。可以在上午9点到上午10点之间。甚至即使有延迟,也不会有问题。 感谢任何帮助我的人。我为我的英语感到抱歉。
我的代码:
MyActivity
//set as restrictions
//only run when there is internet
Constraints constraints = new Constraints.Builder().setrequiredNetworkType(NetworkType.CONNECTED).build();
// Passing params
Data.Builder data = new Data.Builder();
data.putString("email",email);
data.putString("tipo",tipo);
PeriodicWorkRequest periodicWork = new PeriodicWorkRequest.Builder(NotificationBackground.class,24,TimeUnit.HOURS).setConstraints(constraints).addTag("Notificacao_Eventos")
.setInputData(data.build()).build();
WorkManager.getInstance(this).enqueue(periodicWork);
NotificationBackground
public class NotificationBackground extends Worker {
public NotificationBackground(@NonNull Context context,@NonNull WorkerParameters params) {
super(context,params);
}
@Override
public Result doWork() {
String email = getInputData().getString("email");
String tipo = getInputData().getString("tipo");
if(email == null || tipo==null) {
return Result.failure();
}
buscarDadosBD();
return Result.retry();
}
private void buscarDadosBD(){
//just for testing,but then I'll put the code to query the database
System.out.println("Teste");
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。