如何通过工作管理器的setData方法在工作管理器中传递Serializable对象?有什么方法可以通过传递对象来与工作管理器进行处理?
WorkManager是一个用于使工作入队的库,该库在满足其约束条件后可以执行。WorkManager允许观察工作状态以及创建复杂工作链的能力。
Map<String, Object> map = new HashMap<>();
AddressBookData addressBookData = new AddressBookData();
addressBookData.setThreadId(001);
map.put("AddressBookData", addressBookData);
Data data = new Data.Builder()
.putAll(map)
.build();
OneTimeWorkRequest compressionWork =
new OneTimeWorkRequest.Builder(DataSyncWorker.class)
.setInputData(data)
.build();
Run Code Online (Sandbox Code Playgroud)
它使应用程序崩溃并显示诸如AddressBookData之类的错误不是有效的类。
注意:我想在工作管理器中传递POJO类,并在doWork方法中从工作管理器获取InputData。