Android 如何使用Workmanager/PeriodicWorkRequest在间隔之间保存数据

Android 如何使用Workmanager/PeriodicWorkRequest在间隔之间保存数据,android,android-workmanager,Android,Android Workmanager,我需要IntervalWork类中的一个变量在不同的调用或间隔期间保存它的数据。在类中使变量成为静态或全局变量不起作用。怎么做 间隔(“保留”总是失去价值): 主要活动: Constraints IntervalWorkerCS = new Constraints.Builder() .setRequiresBatteryNotLow(true) .build(); //W/WM-WorkSpec: Interval dur

我需要IntervalWork类中的一个变量在不同的调用或间隔期间保存它的数据。在类中使变量成为静态或全局变量不起作用。怎么做

间隔(“保留”总是失去价值):

主要活动:

        Constraints IntervalWorkerCS = new Constraints.Builder()
            .setRequiresBatteryNotLow(true)
            .build();
    //W/WM-WorkSpec: Interval duration lesser than minimum allowed value; Changed to 900000(15 minutes)
    PeriodicWorkRequest periodicWork = new PeriodicWorkRequest.Builder(IntervalWork.class, 15, TimeUnit.MINUTES)
            .setConstraints(IntervalWorkerCS)
            .setInitialDelay(delay,TimeUnit.MINUTES)
            .addTag("MyID")
            .build();
        WorkManager.getInstance(this).cancelAllWork();
        WorkManager.getInstance(this).enqueueUniquePeriodicWork("MyID", ExistingPeriodicWorkPolicy.KEEP, periodicWork);

您的流程可能在工作项之间终止。因此,如果您希望保留数据,请将其保存在文件(数据库、
SharedReferences
等)或服务器上

        Constraints IntervalWorkerCS = new Constraints.Builder()
            .setRequiresBatteryNotLow(true)
            .build();
    //W/WM-WorkSpec: Interval duration lesser than minimum allowed value; Changed to 900000(15 minutes)
    PeriodicWorkRequest periodicWork = new PeriodicWorkRequest.Builder(IntervalWork.class, 15, TimeUnit.MINUTES)
            .setConstraints(IntervalWorkerCS)
            .setInitialDelay(delay,TimeUnit.MINUTES)
            .addTag("MyID")
            .build();
        WorkManager.getInstance(this).cancelAllWork();
        WorkManager.getInstance(this).enqueueUniquePeriodicWork("MyID", ExistingPeriodicWorkPolicy.KEEP, periodicWork);