1// Signature format: 4.0
2package androidx.work {
3
4  public final class ArrayCreatingInputMerger extends androidx.work.InputMerger {
5    ctor public ArrayCreatingInputMerger();
6    method public androidx.work.Data merge(java.util.List<androidx.work.Data> inputs);
7  }
8
9  public enum BackoffPolicy {
10    enum_constant public static final androidx.work.BackoffPolicy EXPONENTIAL;
11    enum_constant public static final androidx.work.BackoffPolicy LINEAR;
12  }
13
14  public interface Clock {
15    method public long currentTimeMillis();
16  }
17
18  public final class Configuration {
19    method public androidx.work.Clock getClock();
20    method public int getContentUriTriggerWorkersLimit();
21    method public String? getDefaultProcessName();
22    method public java.util.concurrent.Executor getExecutor();
23    method public androidx.core.util.Consumer<java.lang.Throwable>? getInitializationExceptionHandler();
24    method public androidx.work.InputMergerFactory getInputMergerFactory();
25    method public int getMaxJobSchedulerId();
26    method public int getMinJobSchedulerId();
27    method public androidx.work.RunnableScheduler getRunnableScheduler();
28    method public androidx.core.util.Consumer<java.lang.Throwable>? getSchedulingExceptionHandler();
29    method public java.util.concurrent.Executor getTaskExecutor();
30    method public androidx.work.WorkerFactory getWorkerFactory();
31    property public final androidx.work.Clock clock;
32    property public final int contentUriTriggerWorkersLimit;
33    property public final String? defaultProcessName;
34    property public final java.util.concurrent.Executor executor;
35    property public final androidx.core.util.Consumer<java.lang.Throwable>? initializationExceptionHandler;
36    property public final androidx.work.InputMergerFactory inputMergerFactory;
37    property public final int maxJobSchedulerId;
38    property public final int minJobSchedulerId;
39    property public final androidx.work.RunnableScheduler runnableScheduler;
40    property public final androidx.core.util.Consumer<java.lang.Throwable>? schedulingExceptionHandler;
41    property public final java.util.concurrent.Executor taskExecutor;
42    property public final androidx.work.WorkerFactory workerFactory;
43    field public static final androidx.work.Configuration.Companion Companion;
44    field public static final int MIN_SCHEDULER_LIMIT = 20; // 0x14
45  }
46
47  public static final class Configuration.Builder {
48    ctor public Configuration.Builder();
49    method public androidx.work.Configuration build();
50    method public androidx.work.Configuration.Builder setClock(androidx.work.Clock clock);
51    method public androidx.work.Configuration.Builder setContentUriTriggerWorkersLimit(int contentUriTriggerWorkersLimit);
52    method public androidx.work.Configuration.Builder setDefaultProcessName(String processName);
53    method public androidx.work.Configuration.Builder setExecutor(java.util.concurrent.Executor executor);
54    method public androidx.work.Configuration.Builder setInitializationExceptionHandler(androidx.core.util.Consumer<java.lang.Throwable> exceptionHandler);
55    method public androidx.work.Configuration.Builder setInputMergerFactory(androidx.work.InputMergerFactory inputMergerFactory);
56    method public androidx.work.Configuration.Builder setJobSchedulerJobIdRange(int minJobSchedulerId, int maxJobSchedulerId);
57    method public androidx.work.Configuration.Builder setMaxSchedulerLimit(int maxSchedulerLimit);
58    method public androidx.work.Configuration.Builder setMinimumLoggingLevel(int loggingLevel);
59    method public androidx.work.Configuration.Builder setRunnableScheduler(androidx.work.RunnableScheduler runnableScheduler);
60    method public androidx.work.Configuration.Builder setSchedulingExceptionHandler(androidx.core.util.Consumer<java.lang.Throwable> schedulingExceptionHandler);
61    method public androidx.work.Configuration.Builder setTaskExecutor(java.util.concurrent.Executor taskExecutor);
62    method public androidx.work.Configuration.Builder setWorkerFactory(androidx.work.WorkerFactory workerFactory);
63  }
64
65  public static final class Configuration.Companion {
66  }
67
68  public static interface Configuration.Provider {
69    method public androidx.work.Configuration getWorkManagerConfiguration();
70    property public abstract androidx.work.Configuration workManagerConfiguration;
71  }
72
73  public final class Constraints {
74    ctor public Constraints(androidx.work.Constraints other);
75    ctor @androidx.room.Ignore public Constraints(optional androidx.work.NetworkType requiredNetworkType, optional boolean requiresCharging, optional boolean requiresBatteryNotLow, optional boolean requiresStorageNotLow);
76    ctor @RequiresApi(23) @androidx.room.Ignore public Constraints(optional androidx.work.NetworkType requiredNetworkType, optional boolean requiresCharging, optional boolean requiresDeviceIdle, optional boolean requiresBatteryNotLow, optional boolean requiresStorageNotLow);
77    ctor @RequiresApi(24) public Constraints(optional androidx.work.NetworkType requiredNetworkType, optional boolean requiresCharging, optional boolean requiresDeviceIdle, optional boolean requiresBatteryNotLow, optional boolean requiresStorageNotLow, optional long contentTriggerUpdateDelayMillis, optional long contentTriggerMaxDelayMillis, optional java.util.Set<androidx.work.Constraints.ContentUriTrigger> contentUriTriggers);
78    method @RequiresApi(24) public long getContentTriggerMaxDelayMillis();
79    method @RequiresApi(24) public long getContentTriggerUpdateDelayMillis();
80    method @RequiresApi(24) public java.util.Set<androidx.work.Constraints.ContentUriTrigger> getContentUriTriggers();
81    method public androidx.work.NetworkType getRequiredNetworkType();
82    method public boolean requiresBatteryNotLow();
83    method public boolean requiresCharging();
84    method @RequiresApi(23) public boolean requiresDeviceIdle();
85    method public boolean requiresStorageNotLow();
86    property @RequiresApi(24) public final long contentTriggerMaxDelayMillis;
87    property @RequiresApi(24) public final long contentTriggerUpdateDelayMillis;
88    property @RequiresApi(24) public final java.util.Set<androidx.work.Constraints.ContentUriTrigger> contentUriTriggers;
89    property public final androidx.work.NetworkType requiredNetworkType;
90    field public static final androidx.work.Constraints.Companion Companion;
91    field public static final androidx.work.Constraints NONE;
92  }
93
94  public static final class Constraints.Builder {
95    ctor public Constraints.Builder();
96    method @RequiresApi(24) public androidx.work.Constraints.Builder addContentUriTrigger(android.net.Uri uri, boolean triggerForDescendants);
97    method public androidx.work.Constraints build();
98    method public androidx.work.Constraints.Builder setRequiredNetworkType(androidx.work.NetworkType networkType);
99    method public androidx.work.Constraints.Builder setRequiresBatteryNotLow(boolean requiresBatteryNotLow);
100    method public androidx.work.Constraints.Builder setRequiresCharging(boolean requiresCharging);
101    method @RequiresApi(23) public androidx.work.Constraints.Builder setRequiresDeviceIdle(boolean requiresDeviceIdle);
102    method public androidx.work.Constraints.Builder setRequiresStorageNotLow(boolean requiresStorageNotLow);
103    method @RequiresApi(26) public androidx.work.Constraints.Builder setTriggerContentMaxDelay(java.time.Duration duration);
104    method @RequiresApi(24) public androidx.work.Constraints.Builder setTriggerContentMaxDelay(long duration, java.util.concurrent.TimeUnit timeUnit);
105    method @RequiresApi(26) public androidx.work.Constraints.Builder setTriggerContentUpdateDelay(java.time.Duration duration);
106    method @RequiresApi(24) public androidx.work.Constraints.Builder setTriggerContentUpdateDelay(long duration, java.util.concurrent.TimeUnit timeUnit);
107  }
108
109  public static final class Constraints.Companion {
110  }
111
112  public static final class Constraints.ContentUriTrigger {
113    ctor public Constraints.ContentUriTrigger(android.net.Uri uri, boolean isTriggeredForDescendants);
114    method public android.net.Uri getUri();
115    method public boolean isTriggeredForDescendants();
116    property public final boolean isTriggeredForDescendants;
117    property public final android.net.Uri uri;
118  }
119
120  public abstract class CoroutineWorker extends androidx.work.ListenableWorker {
121    ctor public CoroutineWorker(android.content.Context appContext, androidx.work.WorkerParameters params);
122    method public abstract suspend Object? doWork(kotlin.coroutines.Continuation<? super androidx.work.ListenableWorker.Result>);
123    method @Deprecated public kotlinx.coroutines.CoroutineDispatcher getCoroutineContext();
124    method public suspend Object? getForegroundInfo(kotlin.coroutines.Continuation<? super androidx.work.ForegroundInfo>);
125    method public final com.google.common.util.concurrent.ListenableFuture<androidx.work.ForegroundInfo> getForegroundInfoAsync();
126    method public final void onStopped();
127    method public final suspend Object? setForeground(androidx.work.ForegroundInfo foregroundInfo, kotlin.coroutines.Continuation<? super kotlin.Unit>);
128    method public final suspend Object? setProgress(androidx.work.Data data, kotlin.coroutines.Continuation<? super kotlin.Unit>);
129    method public final com.google.common.util.concurrent.ListenableFuture<androidx.work.ListenableWorker.Result> startWork();
130    property @Deprecated public kotlinx.coroutines.CoroutineDispatcher coroutineContext;
131  }
132
133  public final class Data {
134    ctor public Data(androidx.work.Data);
135    method @androidx.room.TypeConverter public static androidx.work.Data fromByteArray(byte[]);
136    method public boolean getBoolean(String, boolean);
137    method public boolean[]? getBooleanArray(String);
138    method public byte getByte(String, byte);
139    method public byte[]? getByteArray(String);
140    method public double getDouble(String, double);
141    method public double[]? getDoubleArray(String);
142    method public float getFloat(String, float);
143    method public float[]? getFloatArray(String);
144    method public int getInt(String, int);
145    method public int[]? getIntArray(String);
146    method public java.util.Map<java.lang.String!,java.lang.Object!> getKeyValueMap();
147    method public long getLong(String, long);
148    method public long[]? getLongArray(String);
149    method public String? getString(String);
150    method public String![]? getStringArray(String);
151    method public <T> boolean hasKeyWithValueOfType(String, Class<T!>);
152    method public byte[] toByteArray();
153    field public static final androidx.work.Data EMPTY;
154    field public static final int MAX_DATA_BYTES = 10240; // 0x2800
155  }
156
157  public static final class Data.Builder {
158    ctor public Data.Builder();
159    method public androidx.work.Data build();
160    method public androidx.work.Data.Builder putAll(androidx.work.Data);
161    method public androidx.work.Data.Builder putAll(java.util.Map<java.lang.String!,java.lang.Object!>);
162    method public androidx.work.Data.Builder putBoolean(String, boolean);
163    method public androidx.work.Data.Builder putBooleanArray(String, boolean[]);
164    method public androidx.work.Data.Builder putByte(String, byte);
165    method public androidx.work.Data.Builder putByteArray(String, byte[]);
166    method public androidx.work.Data.Builder putDouble(String, double);
167    method public androidx.work.Data.Builder putDoubleArray(String, double[]);
168    method public androidx.work.Data.Builder putFloat(String, float);
169    method public androidx.work.Data.Builder putFloatArray(String, float[]);
170    method public androidx.work.Data.Builder putInt(String, int);
171    method public androidx.work.Data.Builder putIntArray(String, int[]);
172    method public androidx.work.Data.Builder putLong(String, long);
173    method public androidx.work.Data.Builder putLongArray(String, long[]);
174    method public androidx.work.Data.Builder putString(String, String?);
175    method public androidx.work.Data.Builder putStringArray(String, String![]);
176  }
177
178  public final class DataKt {
179    method public static inline <reified T> boolean hasKeyWithValueOfType(androidx.work.Data, String key);
180    method public static inline androidx.work.Data workDataOf(kotlin.Pair<java.lang.String,? extends java.lang.Object?>... pairs);
181  }
182
183  public class DelegatingWorkerFactory extends androidx.work.WorkerFactory {
184    ctor public DelegatingWorkerFactory();
185    method public final void addFactory(androidx.work.WorkerFactory);
186    method public final androidx.work.ListenableWorker? createWorker(android.content.Context, String, androidx.work.WorkerParameters);
187  }
188
189  public enum ExistingPeriodicWorkPolicy {
190    enum_constant public static final androidx.work.ExistingPeriodicWorkPolicy CANCEL_AND_REENQUEUE;
191    enum_constant public static final androidx.work.ExistingPeriodicWorkPolicy KEEP;
192    enum_constant @Deprecated public static final androidx.work.ExistingPeriodicWorkPolicy REPLACE;
193    enum_constant public static final androidx.work.ExistingPeriodicWorkPolicy UPDATE;
194  }
195
196  public enum ExistingWorkPolicy {
197    enum_constant public static final androidx.work.ExistingWorkPolicy APPEND;
198    enum_constant public static final androidx.work.ExistingWorkPolicy APPEND_OR_REPLACE;
199    enum_constant public static final androidx.work.ExistingWorkPolicy KEEP;
200    enum_constant public static final androidx.work.ExistingWorkPolicy REPLACE;
201  }
202
203  public final class ForegroundInfo {
204    ctor public ForegroundInfo(int, android.app.Notification);
205    ctor public ForegroundInfo(int, android.app.Notification, int);
206    method public int getForegroundServiceType();
207    method public android.app.Notification getNotification();
208    method public int getNotificationId();
209  }
210
211  public interface ForegroundUpdater {
212    method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setForegroundAsync(android.content.Context, java.util.UUID, androidx.work.ForegroundInfo);
213  }
214
215  public abstract class InputMerger {
216    ctor public InputMerger();
217    method public abstract androidx.work.Data merge(java.util.List<androidx.work.Data> inputs);
218  }
219
220  public abstract class InputMergerFactory {
221    ctor public InputMergerFactory();
222    method public abstract androidx.work.InputMerger? createInputMerger(String className);
223  }
224
225  public abstract class ListenableWorker {
226    ctor public ListenableWorker(android.content.Context, androidx.work.WorkerParameters);
227    method public final android.content.Context getApplicationContext();
228    method public com.google.common.util.concurrent.ListenableFuture<androidx.work.ForegroundInfo!> getForegroundInfoAsync();
229    method public final java.util.UUID getId();
230    method public final androidx.work.Data getInputData();
231    method @RequiresApi(28) public final android.net.Network? getNetwork();
232    method @IntRange(from=0) public final int getRunAttemptCount();
233    method @RequiresApi(31) public final int getStopReason();
234    method public final java.util.Set<java.lang.String!> getTags();
235    method @RequiresApi(24) public final java.util.List<java.lang.String!> getTriggeredContentAuthorities();
236    method @RequiresApi(24) public final java.util.List<android.net.Uri!> getTriggeredContentUris();
237    method public final boolean isStopped();
238    method public void onStopped();
239    method public final com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setForegroundAsync(androidx.work.ForegroundInfo);
240    method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> setProgressAsync(androidx.work.Data);
241    method @MainThread public abstract com.google.common.util.concurrent.ListenableFuture<androidx.work.ListenableWorker.Result!> startWork();
242  }
243
244  public abstract static class ListenableWorker.Result {
245    method public static androidx.work.ListenableWorker.Result failure();
246    method public static androidx.work.ListenableWorker.Result failure(androidx.work.Data);
247    method public abstract androidx.work.Data getOutputData();
248    method public static androidx.work.ListenableWorker.Result retry();
249    method public static androidx.work.ListenableWorker.Result success();
250    method public static androidx.work.ListenableWorker.Result success(androidx.work.Data);
251  }
252
253  public enum NetworkType {
254    enum_constant public static final androidx.work.NetworkType CONNECTED;
255    enum_constant public static final androidx.work.NetworkType METERED;
256    enum_constant public static final androidx.work.NetworkType NOT_REQUIRED;
257    enum_constant public static final androidx.work.NetworkType NOT_ROAMING;
258    enum_constant @RequiresApi(30) public static final androidx.work.NetworkType TEMPORARILY_UNMETERED;
259    enum_constant public static final androidx.work.NetworkType UNMETERED;
260  }
261
262  public final class OneTimeWorkRequest extends androidx.work.WorkRequest {
263    method public static androidx.work.OneTimeWorkRequest from(Class<? extends androidx.work.ListenableWorker> workerClass);
264    method public static java.util.List<androidx.work.OneTimeWorkRequest> from(java.util.List<? extends java.lang.Class<? extends androidx.work.ListenableWorker>> workerClasses);
265    field public static final androidx.work.OneTimeWorkRequest.Companion Companion;
266  }
267
268  public static final class OneTimeWorkRequest.Builder extends androidx.work.WorkRequest.Builder<androidx.work.OneTimeWorkRequest.Builder,androidx.work.OneTimeWorkRequest> {
269    ctor public OneTimeWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker> workerClass);
270    method public androidx.work.OneTimeWorkRequest.Builder setInputMerger(Class<? extends androidx.work.InputMerger> inputMerger);
271  }
272
273  public static final class OneTimeWorkRequest.Companion {
274    method public androidx.work.OneTimeWorkRequest from(Class<? extends androidx.work.ListenableWorker> workerClass);
275    method public java.util.List<androidx.work.OneTimeWorkRequest> from(java.util.List<? extends java.lang.Class<? extends androidx.work.ListenableWorker>> workerClasses);
276  }
277
278  public final class OneTimeWorkRequestKt {
279    method public static inline <reified W extends androidx.work.ListenableWorker> androidx.work.OneTimeWorkRequest.Builder OneTimeWorkRequestBuilder();
280    method public static inline androidx.work.OneTimeWorkRequest.Builder setInputMerger(androidx.work.OneTimeWorkRequest.Builder, kotlin.reflect.KClass<? extends androidx.work.InputMerger> inputMerger);
281  }
282
283  public interface Operation {
284    method public com.google.common.util.concurrent.ListenableFuture<androidx.work.Operation.State.SUCCESS!> getResult();
285    method public androidx.lifecycle.LiveData<androidx.work.Operation.State!> getState();
286  }
287
288  public abstract static class Operation.State {
289  }
290
291  public static final class Operation.State.FAILURE extends androidx.work.Operation.State {
292    ctor public Operation.State.FAILURE(Throwable);
293    method public Throwable getThrowable();
294  }
295
296  public static final class Operation.State.IN_PROGRESS extends androidx.work.Operation.State {
297  }
298
299  public static final class Operation.State.SUCCESS extends androidx.work.Operation.State {
300  }
301
302  public final class OperationKt {
303    method public static suspend inline Object? await(androidx.work.Operation, kotlin.coroutines.Continuation<? super androidx.work.Operation.State.SUCCESS>);
304  }
305
306  public enum OutOfQuotaPolicy {
307    enum_constant public static final androidx.work.OutOfQuotaPolicy DROP_WORK_REQUEST;
308    enum_constant public static final androidx.work.OutOfQuotaPolicy RUN_AS_NON_EXPEDITED_WORK_REQUEST;
309  }
310
311  public final class OverwritingInputMerger extends androidx.work.InputMerger {
312    ctor public OverwritingInputMerger();
313    method public androidx.work.Data merge(java.util.List<androidx.work.Data> inputs);
314  }
315
316  public final class PeriodicWorkRequest extends androidx.work.WorkRequest {
317    field public static final androidx.work.PeriodicWorkRequest.Companion Companion;
318    field public static final long MIN_PERIODIC_FLEX_MILLIS = 300000L; // 0x493e0L
319    field public static final long MIN_PERIODIC_INTERVAL_MILLIS = 900000L; // 0xdbba0L
320  }
321
322  public static final class PeriodicWorkRequest.Builder extends androidx.work.WorkRequest.Builder<androidx.work.PeriodicWorkRequest.Builder,androidx.work.PeriodicWorkRequest> {
323    ctor @RequiresApi(26) public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker> workerClass, java.time.Duration repeatInterval);
324    ctor @RequiresApi(26) public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker?> workerClass, java.time.Duration repeatInterval, java.time.Duration flexInterval);
325    ctor public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker?> workerClass, long repeatInterval, java.util.concurrent.TimeUnit repeatIntervalTimeUnit);
326    ctor public PeriodicWorkRequest.Builder(Class<? extends androidx.work.ListenableWorker?> workerClass, long repeatInterval, java.util.concurrent.TimeUnit repeatIntervalTimeUnit, long flexInterval, java.util.concurrent.TimeUnit flexIntervalTimeUnit);
327    method public androidx.work.PeriodicWorkRequest.Builder clearNextScheduleTimeOverride();
328    method public androidx.work.PeriodicWorkRequest.Builder setNextScheduleTimeOverride(long nextScheduleTimeOverrideMillis);
329  }
330
331  public static final class PeriodicWorkRequest.Companion {
332  }
333
334  public final class PeriodicWorkRequestKt {
335    method @RequiresApi(26) public static inline <reified W extends androidx.work.ListenableWorker> androidx.work.PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(java.time.Duration repeatInterval);
336    method @RequiresApi(26) public static inline <reified W extends androidx.work.ListenableWorker> androidx.work.PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(java.time.Duration repeatInterval, java.time.Duration flexTimeInterval);
337    method public static inline <reified W extends androidx.work.ListenableWorker> androidx.work.PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(long repeatInterval, java.util.concurrent.TimeUnit repeatIntervalTimeUnit);
338    method public static inline <reified W extends androidx.work.ListenableWorker> androidx.work.PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(long repeatInterval, java.util.concurrent.TimeUnit repeatIntervalTimeUnit, long flexTimeInterval, java.util.concurrent.TimeUnit flexTimeIntervalUnit);
339  }
340
341  public interface ProgressUpdater {
342    method public com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> updateProgress(android.content.Context, java.util.UUID, androidx.work.Data);
343  }
344
345  public interface RunnableScheduler {
346    method public void cancel(Runnable);
347    method public void scheduleWithDelay(@IntRange(from=0) long, Runnable);
348  }
349
350  public abstract class WorkContinuation {
351    ctor public WorkContinuation();
352    method public static androidx.work.WorkContinuation combine(java.util.List<androidx.work.WorkContinuation!>);
353    method public abstract androidx.work.Operation enqueue();
354    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfos();
355    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosLiveData();
356    method public final androidx.work.WorkContinuation then(androidx.work.OneTimeWorkRequest);
357    method public abstract androidx.work.WorkContinuation then(java.util.List<androidx.work.OneTimeWorkRequest!>);
358  }
359
360  public final class WorkInfo {
361    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags);
362    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData);
363    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress);
364    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount);
365    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation);
366    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation, optional androidx.work.Constraints constraints);
367    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation, optional androidx.work.Constraints constraints, optional long initialDelayMillis);
368    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation, optional androidx.work.Constraints constraints, optional long initialDelayMillis, optional androidx.work.WorkInfo.PeriodicityInfo? periodicityInfo);
369    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation, optional androidx.work.Constraints constraints, optional long initialDelayMillis, optional androidx.work.WorkInfo.PeriodicityInfo? periodicityInfo, optional long nextScheduleTimeMillis);
370    ctor public WorkInfo(java.util.UUID id, androidx.work.WorkInfo.State state, java.util.Set<java.lang.String> tags, optional androidx.work.Data outputData, optional androidx.work.Data progress, optional int runAttemptCount, optional int generation, optional androidx.work.Constraints constraints, optional long initialDelayMillis, optional androidx.work.WorkInfo.PeriodicityInfo? periodicityInfo, optional long nextScheduleTimeMillis, optional int stopReason);
371    method public androidx.work.Constraints getConstraints();
372    method public int getGeneration();
373    method public java.util.UUID getId();
374    method public long getInitialDelayMillis();
375    method public long getNextScheduleTimeMillis();
376    method public androidx.work.Data getOutputData();
377    method public androidx.work.WorkInfo.PeriodicityInfo? getPeriodicityInfo();
378    method public androidx.work.Data getProgress();
379    method @IntRange(from=0L) public int getRunAttemptCount();
380    method public androidx.work.WorkInfo.State getState();
381    method @RequiresApi(31) public int getStopReason();
382    method public java.util.Set<java.lang.String> getTags();
383    property public final androidx.work.Constraints constraints;
384    property public final int generation;
385    property public final java.util.UUID id;
386    property public final long initialDelayMillis;
387    property public final long nextScheduleTimeMillis;
388    property public final androidx.work.Data outputData;
389    property public final androidx.work.WorkInfo.PeriodicityInfo? periodicityInfo;
390    property public final androidx.work.Data progress;
391    property @IntRange(from=0L) public final int runAttemptCount;
392    property public final androidx.work.WorkInfo.State state;
393    property @RequiresApi(31) public final int stopReason;
394    property public final java.util.Set<java.lang.String> tags;
395    field public static final androidx.work.WorkInfo.Companion Companion;
396    field public static final int STOP_REASON_APP_STANDBY = 12; // 0xc
397    field public static final int STOP_REASON_BACKGROUND_RESTRICTION = 11; // 0xb
398    field public static final int STOP_REASON_CANCELLED_BY_APP = 1; // 0x1
399    field public static final int STOP_REASON_CONSTRAINT_BATTERY_NOT_LOW = 5; // 0x5
400    field public static final int STOP_REASON_CONSTRAINT_CHARGING = 6; // 0x6
401    field public static final int STOP_REASON_CONSTRAINT_CONNECTIVITY = 7; // 0x7
402    field public static final int STOP_REASON_CONSTRAINT_DEVICE_IDLE = 8; // 0x8
403    field public static final int STOP_REASON_CONSTRAINT_STORAGE_NOT_LOW = 9; // 0x9
404    field public static final int STOP_REASON_DEVICE_STATE = 4; // 0x4
405    field public static final int STOP_REASON_ESTIMATED_APP_LAUNCH_TIME_CHANGED = 15; // 0xf
406    field public static final int STOP_REASON_NOT_STOPPED = -256; // 0xffffff00
407    field public static final int STOP_REASON_PREEMPT = 2; // 0x2
408    field public static final int STOP_REASON_QUOTA = 10; // 0xa
409    field public static final int STOP_REASON_SYSTEM_PROCESSING = 14; // 0xe
410    field public static final int STOP_REASON_TIMEOUT = 3; // 0x3
411    field public static final int STOP_REASON_UNKNOWN = -512; // 0xfffffe00
412    field public static final int STOP_REASON_USER = 13; // 0xd
413  }
414
415  public static final class WorkInfo.Companion {
416  }
417
418  public static final class WorkInfo.PeriodicityInfo {
419    ctor public WorkInfo.PeriodicityInfo(long repeatIntervalMillis, long flexIntervalMillis);
420    method public long getFlexIntervalMillis();
421    method public long getRepeatIntervalMillis();
422    property public final long flexIntervalMillis;
423    property public final long repeatIntervalMillis;
424  }
425
426  public enum WorkInfo.State {
427    method public boolean isFinished();
428    property public final boolean isFinished;
429    enum_constant public static final androidx.work.WorkInfo.State BLOCKED;
430    enum_constant public static final androidx.work.WorkInfo.State CANCELLED;
431    enum_constant public static final androidx.work.WorkInfo.State ENQUEUED;
432    enum_constant public static final androidx.work.WorkInfo.State FAILED;
433    enum_constant public static final androidx.work.WorkInfo.State RUNNING;
434    enum_constant public static final androidx.work.WorkInfo.State SUCCEEDED;
435  }
436
437  public abstract class WorkManager {
438    method public final androidx.work.WorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
439    method public abstract androidx.work.WorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
440    method public final androidx.work.WorkContinuation beginWith(androidx.work.OneTimeWorkRequest);
441    method public abstract androidx.work.WorkContinuation beginWith(java.util.List<androidx.work.OneTimeWorkRequest!>);
442    method public abstract androidx.work.Operation cancelAllWork();
443    method public abstract androidx.work.Operation cancelAllWorkByTag(String);
444    method public abstract androidx.work.Operation cancelUniqueWork(String);
445    method public abstract androidx.work.Operation cancelWorkById(java.util.UUID);
446    method public abstract android.app.PendingIntent createCancelPendingIntent(java.util.UUID);
447    method public final androidx.work.Operation enqueue(androidx.work.WorkRequest);
448    method public abstract androidx.work.Operation enqueue(java.util.List<? extends androidx.work.WorkRequest!>);
449    method public abstract androidx.work.Operation enqueueUniquePeriodicWork(String, androidx.work.ExistingPeriodicWorkPolicy, androidx.work.PeriodicWorkRequest);
450    method public androidx.work.Operation enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
451    method public abstract androidx.work.Operation enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
452    method public abstract androidx.work.Configuration getConfiguration();
453    method @Deprecated public static androidx.work.WorkManager getInstance();
454    method public static androidx.work.WorkManager getInstance(android.content.Context);
455    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Long!> getLastCancelAllTimeMillis();
456    method public abstract androidx.lifecycle.LiveData<java.lang.Long!> getLastCancelAllTimeMillisLiveData();
457    method public abstract com.google.common.util.concurrent.ListenableFuture<androidx.work.WorkInfo!> getWorkInfoById(java.util.UUID);
458    method public abstract kotlinx.coroutines.flow.Flow<androidx.work.WorkInfo!> getWorkInfoByIdFlow(java.util.UUID);
459    method public abstract androidx.lifecycle.LiveData<androidx.work.WorkInfo!> getWorkInfoByIdLiveData(java.util.UUID);
460    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfos(androidx.work.WorkQuery);
461    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosByTag(String);
462    method public abstract kotlinx.coroutines.flow.Flow<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosByTagFlow(String);
463    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosByTagLiveData(String);
464    method public abstract kotlinx.coroutines.flow.Flow<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosFlow(androidx.work.WorkQuery);
465    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosForUniqueWork(String);
466    method public abstract kotlinx.coroutines.flow.Flow<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosForUniqueWorkFlow(String);
467    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosForUniqueWorkLiveData(String);
468    method public abstract androidx.lifecycle.LiveData<java.util.List<androidx.work.WorkInfo!>!> getWorkInfosLiveData(androidx.work.WorkQuery);
469    method public static void initialize(android.content.Context, androidx.work.Configuration);
470    method public static boolean isInitialized();
471    method public abstract androidx.work.Operation pruneWork();
472    method public abstract com.google.common.util.concurrent.ListenableFuture<androidx.work.WorkManager.UpdateResult!> updateWork(androidx.work.WorkRequest);
473  }
474
475  public enum WorkManager.UpdateResult {
476    enum_constant public static final androidx.work.WorkManager.UpdateResult APPLIED_FOR_NEXT_RUN;
477    enum_constant public static final androidx.work.WorkManager.UpdateResult APPLIED_IMMEDIATELY;
478    enum_constant public static final androidx.work.WorkManager.UpdateResult NOT_APPLIED;
479  }
480
481  public final class WorkManagerInitializer implements androidx.startup.Initializer<androidx.work.WorkManager!> {
482    ctor public WorkManagerInitializer();
483    method public androidx.work.WorkManager create(android.content.Context);
484    method public java.util.List<java.lang.Class<? extends androidx.startup.Initializer<? extends java.lang.Object!>!>!> dependencies();
485  }
486
487  public final class WorkQuery {
488    method public static androidx.work.WorkQuery fromIds(java.util.List<java.util.UUID!>);
489    method public static androidx.work.WorkQuery fromIds(java.util.UUID!...);
490    method public static androidx.work.WorkQuery fromStates(androidx.work.WorkInfo.State!...);
491    method public static androidx.work.WorkQuery fromStates(java.util.List<androidx.work.WorkInfo.State!>);
492    method public static androidx.work.WorkQuery fromTags(java.lang.String!...);
493    method public static androidx.work.WorkQuery fromTags(java.util.List<java.lang.String!>);
494    method public static androidx.work.WorkQuery fromUniqueWorkNames(java.lang.String!...);
495    method public static androidx.work.WorkQuery fromUniqueWorkNames(java.util.List<java.lang.String!>);
496    method public java.util.List<java.util.UUID!> getIds();
497    method public java.util.List<androidx.work.WorkInfo.State!> getStates();
498    method public java.util.List<java.lang.String!> getTags();
499    method public java.util.List<java.lang.String!> getUniqueWorkNames();
500  }
501
502  public static final class WorkQuery.Builder {
503    method public androidx.work.WorkQuery.Builder addIds(java.util.List<java.util.UUID!>);
504    method public androidx.work.WorkQuery.Builder addStates(java.util.List<androidx.work.WorkInfo.State!>);
505    method public androidx.work.WorkQuery.Builder addTags(java.util.List<java.lang.String!>);
506    method public androidx.work.WorkQuery.Builder addUniqueWorkNames(java.util.List<java.lang.String!>);
507    method public androidx.work.WorkQuery build();
508    method public static androidx.work.WorkQuery.Builder fromIds(java.util.List<java.util.UUID!>);
509    method public static androidx.work.WorkQuery.Builder fromStates(java.util.List<androidx.work.WorkInfo.State!>);
510    method public static androidx.work.WorkQuery.Builder fromTags(java.util.List<java.lang.String!>);
511    method public static androidx.work.WorkQuery.Builder fromUniqueWorkNames(java.util.List<java.lang.String!>);
512  }
513
514  public abstract class WorkRequest {
515    method public java.util.UUID getId();
516    property public java.util.UUID id;
517    field public static final androidx.work.WorkRequest.Companion Companion;
518    field public static final long DEFAULT_BACKOFF_DELAY_MILLIS = 30000L; // 0x7530L
519    field public static final long MAX_BACKOFF_MILLIS = 18000000L; // 0x112a880L
520    field public static final long MIN_BACKOFF_MILLIS = 10000L; // 0x2710L
521  }
522
523  public abstract static class WorkRequest.Builder<B extends androidx.work.WorkRequest.Builder<B, ?>, W extends androidx.work.WorkRequest> {
524    method public final B addTag(String tag);
525    method public final W build();
526    method @RequiresApi(26) public final B keepResultsForAtLeast(java.time.Duration duration);
527    method public final B keepResultsForAtLeast(long duration, java.util.concurrent.TimeUnit timeUnit);
528    method @RequiresApi(26) public final B setBackoffCriteria(androidx.work.BackoffPolicy backoffPolicy, java.time.Duration duration);
529    method public final B setBackoffCriteria(androidx.work.BackoffPolicy backoffPolicy, long backoffDelay, java.util.concurrent.TimeUnit timeUnit);
530    method public final B setConstraints(androidx.work.Constraints constraints);
531    method public B setExpedited(androidx.work.OutOfQuotaPolicy policy);
532    method public final B setId(java.util.UUID id);
533    method @RequiresApi(26) public B setInitialDelay(java.time.Duration duration);
534    method public B setInitialDelay(long duration, java.util.concurrent.TimeUnit timeUnit);
535    method public final B setInputData(androidx.work.Data inputData);
536  }
537
538  public static final class WorkRequest.Companion {
539  }
540
541  public abstract class Worker extends androidx.work.ListenableWorker {
542    ctor public Worker(android.content.Context, androidx.work.WorkerParameters);
543    method @WorkerThread public abstract androidx.work.ListenableWorker.Result doWork();
544    method @WorkerThread public androidx.work.ForegroundInfo getForegroundInfo();
545    method public final com.google.common.util.concurrent.ListenableFuture<androidx.work.ListenableWorker.Result!> startWork();
546  }
547
548  public abstract class WorkerFactory {
549    ctor public WorkerFactory();
550    method public abstract androidx.work.ListenableWorker? createWorker(android.content.Context, String, androidx.work.WorkerParameters);
551  }
552
553  public final class WorkerParameters {
554    method @IntRange(from=0) public int getGeneration();
555    method public java.util.UUID getId();
556    method public androidx.work.Data getInputData();
557    method @RequiresApi(28) public android.net.Network? getNetwork();
558    method @IntRange(from=0) public int getRunAttemptCount();
559    method public java.util.Set<java.lang.String!> getTags();
560    method @RequiresApi(24) public java.util.List<java.lang.String!> getTriggeredContentAuthorities();
561    method @RequiresApi(24) public java.util.List<android.net.Uri!> getTriggeredContentUris();
562  }
563
564}
565
566package androidx.work.multiprocess {
567
568  public abstract class RemoteWorkContinuation {
569    method public static androidx.work.multiprocess.RemoteWorkContinuation combine(java.util.List<androidx.work.multiprocess.RemoteWorkContinuation!>);
570    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueue();
571    method public final androidx.work.multiprocess.RemoteWorkContinuation then(androidx.work.OneTimeWorkRequest);
572    method public abstract androidx.work.multiprocess.RemoteWorkContinuation then(java.util.List<androidx.work.OneTimeWorkRequest!>);
573  }
574
575  public abstract class RemoteWorkManager {
576    method public final androidx.work.multiprocess.RemoteWorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
577    method public abstract androidx.work.multiprocess.RemoteWorkContinuation beginUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
578    method public final androidx.work.multiprocess.RemoteWorkContinuation beginWith(androidx.work.OneTimeWorkRequest);
579    method public abstract androidx.work.multiprocess.RemoteWorkContinuation beginWith(java.util.List<androidx.work.OneTimeWorkRequest!>);
580    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> cancelAllWork();
581    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> cancelAllWorkByTag(String);
582    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> cancelUniqueWork(String);
583    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> cancelWorkById(java.util.UUID);
584    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueue(androidx.work.WorkRequest);
585    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueue(java.util.List<androidx.work.WorkRequest!>);
586    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueueUniquePeriodicWork(String, androidx.work.ExistingPeriodicWorkPolicy, androidx.work.PeriodicWorkRequest);
587    method public final com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, androidx.work.OneTimeWorkRequest);
588    method public abstract com.google.common.util.concurrent.ListenableFuture<java.lang.Void!> enqueueUniqueWork(String, androidx.work.ExistingWorkPolicy, java.util.List<androidx.work.OneTimeWorkRequest!>);
589    method public static androidx.work.multiprocess.RemoteWorkManager getInstance(android.content.Context);
590    method public abstract com.google.common.util.concurrent.ListenableFuture<java.util.List<androidx.work.WorkInfo!>!> getWorkInfos(androidx.work.WorkQuery);
591  }
592
593}
594
595