【发布时间】:2021-06-16 21:08:32
【问题描述】:
我正在实施具有 15 分钟间隔的 Unique Periodic Work Manager 以将一些数据发送到 Firebase 数据库,但似乎不适用于小米手机。
它在模拟器上运行,但在中国定制ROM手机上运行。
在我的代码下方附加以检查我是否做错了什么
内部活动:
Constraints constraints = new Constraints.Builder()
.setRequiresCharging(false)
.build();
final PeriodicWorkRequest periodicWorkRequest1 = new PeriodicWorkRequest.Builder(UploadWorker.class, 15, TimeUnit.MINUTES).setConstraints(constraints).build();
WorkManager workManager = WorkManager.getInstance(this);
workManager.enqueueUniquePeriodicWork("SYNC_DATA", ExistingPeriodicWorkPolicy.KEEP, periodicWorkRequest1);
UploadWorker.class 内部
@Override
public Result doWork() {
Log.i(TAG, "doWork: inside dowork()");
String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
FirebaseDatabase.getInstance().getReference().child("Redmi").child(currentDateTimeString).setValue(myDetails);
// Indicate whether the work finished successfully with the Result
return Result.success();
}
我也尝试了自动启动权限,但仍然无法正常工作。请帮我。请!!!
【问题讨论】:
-
@ianhanniballake 我确实查看了这个网站,它也有效,但我不能指望用户在最近的应用程序部分锁定应用程序。从开发人员的角度来看,没有解决方法,是吗?
-
你读过Solution for devs section吗? “到目前为止,在开发方面还没有已知的解决方法。”
标签: android android-workmanager