Middle+
Чӣ гуна сохтани WorkManager-и худ дар Android?
sobes.tech AI
Ҷавоб аз AI
-
Стварыце
Configuration:Configuration myConfig = new Configuration.Builder() .setMinimumLoggingLevel(android.util.Log.DEBUG) // дадайце любыя іншыя налады .build(); -
Рэалізуйце
Configuration.Providerу вашым класеApplication:import androidx.work.Configuration; import androidx.work.WorkManager; public class MyApp extends Application implements Configuration.Provider { @Override public Configuration getWorkManagerConfiguration() { return new Configuration.Builder() .setMinimumLoggingLevel(android.util.Log.DEBUG) // Наладзьце Executor, калі неабходна // .setExecutor( Executors.newFixedThreadPool(8)) .build(); } @Override public void onCreate() { super.onCreate(); // Ініцыялізацыя WorkManager адбываецца аўтаматычна пры першым выкарыстанні // або пры выкліку WorkManager.getInstance(this) } } -
Укажыце ваш клас
Applicationу манифесце:<application android:name=".MyApp" ... > </application>
Цяпер WorkManager будзе выкарыстоўваць вашу карыстальніцкую канфігурацыю пры ініцыялізацыі.
Альтэрнатыўны варыянт (для больш поўнага кантролю над ініцыялізацыяй):
-
Рэалізуйце
Configuration.Providerу асобным класе, які не з'яўляеццаApplication. -
У вашым класе
Applicationпераазначце метадonCreate()і ўручную выклічцеWorkManager.initialize():import androidx.work.Configuration; import androidx.work.WorkManager; public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); WorkManager.initialize(this, new Configuration.Builder() .setMinimumLoggingLevel(android.util.Log.DEBUG) // іншыя налады .build()); } }
Гэты падыход не рэкамендуецца, калі вы проста змяняеце стандартныя опцыі. Configuration.Provider з'яўляецца больш простай і правільнай рэалізацыяй для большасці выпадкаў.