我阅读了以下说明:https://developer.android.com/topic/libraries/architecture/workmanager/advanced/custom-configuration#on-demand
现在我有了MyApplication类,但是我不知道如何使用它,也找不到任何地方的明确说明

请求WorkManager.getInstance时,自然会生成错误,因为未在任何地方使用MyApplication类。我不明白如何为WorkManager激活此类。

AndroidManifest.xml

<provider
  android:name="androidx.work.impl.WorkManagerInitializer"
  android:authorities="${applicationId}.workmanager-init"
  tools:node="remove"
  android:exported="false" />


MyApplication.java:

public class MyApplication extends Application implements Configuration.Provider {
    @NonNull
    @Override
    public Configuration getWorkManagerConfiguration() {
        return new Configuration.Builder().
        setExecutor(Executors.newFixedThreadPool(5)).build();
    }
}


我需要完全解决此问题,因此,我将感谢您的良好帮助。如何使按需初始化工作?

最佳答案

WorkManager v2.1引入了按需初始化。这意味着当您具有自定义配置时,您无需调用WorkManager.initialize(),只需调用getInstance(Context)就足够了。

仅仅调用现在不推荐使用的getInstance()(没有Context参数)还不够。这在链接到的documentation中说明。

我还在droidcon Berlin 2019的演讲“拥抱工作管理器”中介绍了它。您可以找到幻灯片here和视频记录here

10-08 15:08