1// Signature format: 2.0
2package android.adservices.ondevicepersonalization {
3
4  public final class AppInfo implements android.os.Parcelable {
5    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public AppInfo(boolean);
6    method public int describeContents();
7    method @NonNull public boolean isInstalled();
8    method public void writeToParcel(@NonNull android.os.Parcel, int);
9    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.AppInfo> CREATOR;
10  }
11
12  public final class DownloadCompletedInput {
13    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public DownloadCompletedInput(@NonNull android.adservices.ondevicepersonalization.KeyValueStore);
14    method @NonNull public android.adservices.ondevicepersonalization.KeyValueStore getDownloadedContents();
15  }
16
17  public final class DownloadCompletedOutput {
18    method @NonNull public java.util.List<java.lang.String> getRetainedKeys();
19  }
20
21  public static final class DownloadCompletedOutput.Builder {
22    ctor public DownloadCompletedOutput.Builder();
23    method @NonNull public android.adservices.ondevicepersonalization.DownloadCompletedOutput.Builder addRetainedKey(@NonNull String);
24    method @NonNull public android.adservices.ondevicepersonalization.DownloadCompletedOutput build();
25    method @NonNull public android.adservices.ondevicepersonalization.DownloadCompletedOutput.Builder setRetainedKeys(@NonNull java.util.List<java.lang.String>);
26  }
27
28  public final class EventInput {
29    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public EventInput(@Nullable android.adservices.ondevicepersonalization.RequestLogRecord, @NonNull android.os.PersistableBundle);
30    method @NonNull public android.os.PersistableBundle getParameters();
31    method @Nullable public android.adservices.ondevicepersonalization.RequestLogRecord getRequestLogRecord();
32  }
33
34  public final class EventLogRecord implements android.os.Parcelable {
35    method public int describeContents();
36    method @Nullable public android.content.ContentValues getData();
37    method @Nullable public android.adservices.ondevicepersonalization.RequestLogRecord getRequestLogRecord();
38    method @IntRange(from=0) public int getRowIndex();
39    method @NonNull public java.time.Instant getTime();
40    method @IntRange(from=1, to=127) public int getType();
41    method public void writeToParcel(@NonNull android.os.Parcel, int);
42    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.EventLogRecord> CREATOR;
43  }
44
45  public static final class EventLogRecord.Builder {
46    ctor public EventLogRecord.Builder();
47    method @NonNull public android.adservices.ondevicepersonalization.EventLogRecord build();
48    method @NonNull public android.adservices.ondevicepersonalization.EventLogRecord.Builder setData(@Nullable android.content.ContentValues);
49    method @NonNull public android.adservices.ondevicepersonalization.EventLogRecord.Builder setRequestLogRecord(@Nullable android.adservices.ondevicepersonalization.RequestLogRecord);
50    method @NonNull public android.adservices.ondevicepersonalization.EventLogRecord.Builder setRowIndex(@IntRange(from=0) int);
51    method @NonNull public android.adservices.ondevicepersonalization.EventLogRecord.Builder setType(@IntRange(from=1, to=127) int);
52  }
53
54  public final class EventOutput {
55    method @Nullable public android.adservices.ondevicepersonalization.EventLogRecord getEventLogRecord();
56  }
57
58  public static final class EventOutput.Builder {
59    ctor public EventOutput.Builder();
60    method @NonNull public android.adservices.ondevicepersonalization.EventOutput build();
61    method @NonNull public android.adservices.ondevicepersonalization.EventOutput.Builder setEventLogRecord(@Nullable android.adservices.ondevicepersonalization.EventLogRecord);
62  }
63
64  public class EventUrlProvider {
65    method @NonNull @WorkerThread public android.net.Uri createEventTrackingUrlWithRedirect(@NonNull android.os.PersistableBundle, @Nullable android.net.Uri);
66    method @NonNull @WorkerThread public android.net.Uri createEventTrackingUrlWithResponse(@NonNull android.os.PersistableBundle, @Nullable byte[], @Nullable String);
67  }
68
69  @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public class ExecuteInIsolatedServiceRequest {
70    method @NonNull public android.os.PersistableBundle getAppParams();
71    method @NonNull public android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.OutputSpec getOutputSpec();
72    method @NonNull public android.content.ComponentName getService();
73  }
74
75  public static final class ExecuteInIsolatedServiceRequest.Builder {
76    ctor public ExecuteInIsolatedServiceRequest.Builder(@NonNull android.content.ComponentName);
77    method @NonNull public android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest build();
78    method @NonNull public android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.Builder setAppParams(@NonNull android.os.PersistableBundle);
79    method @NonNull public android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.Builder setOutputSpec(@NonNull android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.OutputSpec);
80  }
81
82  public static class ExecuteInIsolatedServiceRequest.OutputSpec {
83    method @NonNull public static android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.OutputSpec buildBestValueSpec(@IntRange(from=0) int);
84    method @IntRange(from=android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse.DEFAULT_BEST_VALUE) public int getMaxIntValue();
85    method public int getOutputType();
86    field @NonNull public static final android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest.OutputSpec DEFAULT;
87    field public static final int OUTPUT_TYPE_BEST_VALUE = 1; // 0x1
88    field public static final int OUTPUT_TYPE_NULL = 0; // 0x0
89  }
90
91  @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public class ExecuteInIsolatedServiceResponse {
92    ctor public ExecuteInIsolatedServiceResponse(@Nullable android.adservices.ondevicepersonalization.SurfacePackageToken, @IntRange(from=android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse.DEFAULT_BEST_VALUE) int);
93    method @IntRange(from=android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse.DEFAULT_BEST_VALUE) public int getBestValue();
94    method @Nullable public android.adservices.ondevicepersonalization.SurfacePackageToken getSurfacePackageToken();
95    field public static final int DEFAULT_BEST_VALUE = -1; // 0xffffffff
96  }
97
98  public final class ExecuteInput {
99    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public ExecuteInput(@NonNull String, @NonNull android.os.PersistableBundle);
100    method @NonNull public String getAppPackageName();
101    method @NonNull public android.os.PersistableBundle getAppParams();
102  }
103
104  public final class ExecuteOutput {
105    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") @IntRange(from=android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse.DEFAULT_BEST_VALUE) public int getBestValue();
106    method @NonNull public java.util.List<android.adservices.ondevicepersonalization.EventLogRecord> getEventLogRecords();
107    method @Nullable public byte[] getOutputData();
108    method @Nullable public android.adservices.ondevicepersonalization.RenderingConfig getRenderingConfig();
109    method @Nullable public android.adservices.ondevicepersonalization.RequestLogRecord getRequestLogRecord();
110  }
111
112  public static final class ExecuteOutput.Builder {
113    ctor public ExecuteOutput.Builder();
114    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder addEventLogRecord(@NonNull android.adservices.ondevicepersonalization.EventLogRecord);
115    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput build();
116    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder setBestValue(@IntRange(from=0) int);
117    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder setEventLogRecords(@NonNull java.util.List<android.adservices.ondevicepersonalization.EventLogRecord>);
118    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder setOutputData(@Nullable byte...);
119    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder setRenderingConfig(@Nullable android.adservices.ondevicepersonalization.RenderingConfig);
120    method @NonNull public android.adservices.ondevicepersonalization.ExecuteOutput.Builder setRequestLogRecord(@Nullable android.adservices.ondevicepersonalization.RequestLogRecord);
121  }
122
123  public final class FederatedComputeInput {
124    method @NonNull public String getPopulationName();
125  }
126
127  public static final class FederatedComputeInput.Builder {
128    ctor public FederatedComputeInput.Builder();
129    method @NonNull public android.adservices.ondevicepersonalization.FederatedComputeInput build();
130    method @NonNull public android.adservices.ondevicepersonalization.FederatedComputeInput.Builder setPopulationName(@NonNull String);
131  }
132
133  @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.fcp_schedule_with_outcome_receiver_enabled") public final class FederatedComputeScheduleRequest {
134    ctor public FederatedComputeScheduleRequest(@NonNull android.adservices.ondevicepersonalization.FederatedComputeScheduler.Params, @NonNull String);
135    method @NonNull public android.adservices.ondevicepersonalization.FederatedComputeScheduler.Params getParams();
136    method @NonNull public String getPopulationName();
137  }
138
139  @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.fcp_schedule_with_outcome_receiver_enabled") public final class FederatedComputeScheduleResponse {
140    ctor public FederatedComputeScheduleResponse(@NonNull android.adservices.ondevicepersonalization.FederatedComputeScheduleRequest);
141    method @NonNull public android.adservices.ondevicepersonalization.FederatedComputeScheduleRequest getFederatedComputeScheduleRequest();
142  }
143
144  public class FederatedComputeScheduler {
145    method @WorkerThread public void cancel(@NonNull android.adservices.ondevicepersonalization.FederatedComputeInput);
146    method @WorkerThread public void schedule(@NonNull android.adservices.ondevicepersonalization.FederatedComputeScheduler.Params, @NonNull android.adservices.ondevicepersonalization.FederatedComputeInput);
147    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.fcp_schedule_with_outcome_receiver_enabled") @WorkerThread public void schedule(@NonNull android.adservices.ondevicepersonalization.FederatedComputeScheduleRequest, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.FederatedComputeScheduleResponse,java.lang.Exception>);
148  }
149
150  public static class FederatedComputeScheduler.Params {
151    ctor public FederatedComputeScheduler.Params(@NonNull android.adservices.ondevicepersonalization.TrainingInterval);
152    method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval getTrainingInterval();
153  }
154
155  public final class InferenceInput {
156    method public int getBatchSize();
157    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") @NonNull public byte[] getData();
158    method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput getExpectedOutputStructure();
159    method @NonNull public Object[] getInputData();
160    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params getParams();
161  }
162
163  public static final class InferenceInput.Builder {
164    ctor public InferenceInput.Builder(@NonNull android.adservices.ondevicepersonalization.InferenceInput.Params, @NonNull Object[], @NonNull android.adservices.ondevicepersonalization.InferenceOutput);
165    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") public InferenceInput.Builder(@NonNull android.adservices.ondevicepersonalization.InferenceInput.Params, @NonNull byte[]);
166    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput build();
167    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setBatchSize(int);
168    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setExpectedOutputStructure(@NonNull android.adservices.ondevicepersonalization.InferenceOutput);
169    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setInputData(@NonNull byte[]);
170    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setInputData(@NonNull java.lang.Object...);
171    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setParams(@NonNull android.adservices.ondevicepersonalization.InferenceInput.Params);
172  }
173
174  public static class InferenceInput.Params {
175    method public int getDelegateType();
176    method @NonNull public android.adservices.ondevicepersonalization.KeyValueStore getKeyValueStore();
177    method @NonNull public String getModelKey();
178    method public int getModelType();
179    method @IntRange(from=1) public int getRecommendedNumThreads();
180    field public static final int DELEGATE_CPU = 1; // 0x1
181    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") public static final int MODEL_TYPE_EXECUTORCH = 2; // 0x2
182    field public static final int MODEL_TYPE_TENSORFLOW_LITE = 1; // 0x1
183  }
184
185  public static final class InferenceInput.Params.Builder {
186    ctor public InferenceInput.Params.Builder(@NonNull android.adservices.ondevicepersonalization.KeyValueStore, @NonNull String);
187    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params build();
188    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setDelegateType(int);
189    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setKeyValueStore(@NonNull android.adservices.ondevicepersonalization.KeyValueStore);
190    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setModelKey(@NonNull String);
191    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setModelType(int);
192    method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setRecommendedNumThreads(@IntRange(from=1) int);
193  }
194
195  public final class InferenceOutput {
196    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") @NonNull public byte[] getData();
197    method @NonNull public java.util.Map<java.lang.Integer,java.lang.Object> getDataOutputs();
198  }
199
200  public static final class InferenceOutput.Builder {
201    ctor public InferenceOutput.Builder();
202    method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput.Builder addDataOutput(int, @NonNull Object);
203    method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput build();
204    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.executorch_inference_api_enabled") @NonNull public android.adservices.ondevicepersonalization.InferenceOutput.Builder setData(@NonNull byte[]);
205    method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput.Builder setDataOutputs(@NonNull java.util.Map<java.lang.Integer,java.lang.Object>);
206  }
207
208  public abstract class IsolatedService extends android.app.Service {
209    ctor public IsolatedService();
210    method @NonNull public final android.adservices.ondevicepersonalization.EventUrlProvider getEventUrlProvider(@NonNull android.adservices.ondevicepersonalization.RequestToken);
211    method @NonNull public final android.adservices.ondevicepersonalization.FederatedComputeScheduler getFederatedComputeScheduler(@NonNull android.adservices.ondevicepersonalization.RequestToken);
212    method @NonNull public final android.adservices.ondevicepersonalization.MutableKeyValueStore getLocalData(@NonNull android.adservices.ondevicepersonalization.RequestToken);
213    method @NonNull public final android.adservices.ondevicepersonalization.LogReader getLogReader(@NonNull android.adservices.ondevicepersonalization.RequestToken);
214    method @NonNull public final android.adservices.ondevicepersonalization.ModelManager getModelManager(@NonNull android.adservices.ondevicepersonalization.RequestToken);
215    method @NonNull public final android.adservices.ondevicepersonalization.KeyValueStore getRemoteData(@NonNull android.adservices.ondevicepersonalization.RequestToken);
216    method @Nullable public final android.adservices.ondevicepersonalization.UserData getUserData(@NonNull android.adservices.ondevicepersonalization.RequestToken);
217    method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent);
218    method @NonNull public abstract android.adservices.ondevicepersonalization.IsolatedWorker onRequest(@NonNull android.adservices.ondevicepersonalization.RequestToken);
219  }
220
221  public final class IsolatedServiceException extends java.lang.Exception {
222    ctor public IsolatedServiceException(int);
223    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public IsolatedServiceException(int, @Nullable Throwable);
224    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public IsolatedServiceException(int, @Nullable String, @Nullable Throwable);
225    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public int getErrorCode();
226  }
227
228  public interface IsolatedWorker {
229    method public default void onDownloadCompleted(@NonNull android.adservices.ondevicepersonalization.DownloadCompletedInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.DownloadCompletedOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
230    method public default void onEvent(@NonNull android.adservices.ondevicepersonalization.EventInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.EventOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
231    method public default void onExecute(@NonNull android.adservices.ondevicepersonalization.ExecuteInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.ExecuteOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
232    method public default void onRender(@NonNull android.adservices.ondevicepersonalization.RenderInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.RenderOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
233    method public default void onTrainingExamples(@NonNull android.adservices.ondevicepersonalization.TrainingExamplesInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.TrainingExamplesOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
234    method public default void onWebTrigger(@NonNull android.adservices.ondevicepersonalization.WebTriggerInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.WebTriggerOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>);
235  }
236
237  public interface KeyValueStore {
238    method @Nullable @WorkerThread public byte[] get(@NonNull String);
239    method @NonNull @WorkerThread public java.util.Set<java.lang.String> keySet();
240  }
241
242  public class LogReader {
243    method @NonNull @WorkerThread public java.util.List<android.adservices.ondevicepersonalization.EventLogRecord> getJoinedEvents(@NonNull java.time.Instant, @NonNull java.time.Instant);
244    method @NonNull @WorkerThread public java.util.List<android.adservices.ondevicepersonalization.RequestLogRecord> getRequests(@NonNull java.time.Instant, @NonNull java.time.Instant);
245  }
246
247  public class ModelManager {
248    method @WorkerThread public void run(@NonNull android.adservices.ondevicepersonalization.InferenceInput, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.InferenceOutput,java.lang.Exception>);
249  }
250
251  public interface MutableKeyValueStore extends android.adservices.ondevicepersonalization.KeyValueStore {
252    method @Nullable @WorkerThread public byte[] put(@NonNull String, @NonNull byte[]);
253    method @Nullable @WorkerThread public byte[] remove(@NonNull String);
254  }
255
256  public class OnDevicePersonalizationException extends java.lang.Exception {
257    method public int getErrorCode();
258    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_INFERENCE_FAILED = 9; // 0x9
259    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_INFERENCE_MODEL_NOT_FOUND = 8; // 0x8
260    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_INVALID_TRAINING_MANIFEST = 7; // 0x7
261    field public static final int ERROR_ISOLATED_SERVICE_FAILED = 1; // 0x1
262    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_ISOLATED_SERVICE_LOADING_FAILED = 3; // 0x3
263    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_ISOLATED_SERVICE_MANIFEST_PARSING_FAILED = 4; // 0x4
264    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_ISOLATED_SERVICE_TIMEOUT = 5; // 0x5
265    field public static final int ERROR_PERSONALIZATION_DISABLED = 2; // 0x2
266    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public static final int ERROR_SCHEDULE_TRAINING_FAILED = 6; // 0x6
267  }
268
269  public class OnDevicePersonalizationManager {
270    method public void execute(@NonNull android.content.ComponentName, @NonNull android.os.PersistableBundle, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.OnDevicePersonalizationManager.ExecuteResult,java.lang.Exception>);
271    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.execute_in_isolated_service_api_enabled") public void executeInIsolatedService(@NonNull android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse,java.lang.Exception>);
272    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.is_feature_enabled_api_enabled") public void queryFeatureAvailability(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Integer,java.lang.Exception>);
273    method public void requestSurfacePackage(@NonNull android.adservices.ondevicepersonalization.SurfacePackageToken, @NonNull android.os.IBinder, int, int, int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.view.SurfaceControlViewHost.SurfacePackage,java.lang.Exception>);
274    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.is_feature_enabled_api_enabled") public static final int FEATURE_DISABLED = 1; // 0x1
275    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.is_feature_enabled_api_enabled") public static final int FEATURE_ENABLED = 0; // 0x0
276    field @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.is_feature_enabled_api_enabled") public static final int FEATURE_UNSUPPORTED = 2; // 0x2
277  }
278
279  public static class OnDevicePersonalizationManager.ExecuteResult {
280    method @Nullable public byte[] getOutputData();
281    method @Nullable public android.adservices.ondevicepersonalization.SurfacePackageToken getSurfacePackageToken();
282  }
283
284  public final class RenderInput {
285    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public RenderInput(int, int, @Nullable android.adservices.ondevicepersonalization.RenderingConfig);
286    method public int getHeight();
287    method @Nullable public android.adservices.ondevicepersonalization.RenderingConfig getRenderingConfig();
288    method public int getWidth();
289  }
290
291  public final class RenderOutput {
292    method @Nullable public String getContent();
293    method @Nullable public String getTemplateId();
294    method @NonNull public android.os.PersistableBundle getTemplateParams();
295  }
296
297  public static final class RenderOutput.Builder {
298    ctor public RenderOutput.Builder();
299    method @NonNull public android.adservices.ondevicepersonalization.RenderOutput build();
300    method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setContent(@Nullable String);
301    method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setTemplateId(@Nullable String);
302    method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setTemplateParams(@NonNull android.os.PersistableBundle);
303  }
304
305  public final class RenderingConfig implements android.os.Parcelable {
306    method public int describeContents();
307    method @NonNull public java.util.List<java.lang.String> getKeys();
308    method public void writeToParcel(@NonNull android.os.Parcel, int);
309    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.RenderingConfig> CREATOR;
310  }
311
312  public static final class RenderingConfig.Builder {
313    ctor public RenderingConfig.Builder();
314    method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig.Builder addKey(@NonNull String);
315    method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig build();
316    method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig.Builder setKeys(@NonNull java.util.List<java.lang.String>);
317  }
318
319  public final class RequestLogRecord implements android.os.Parcelable {
320    method public int describeContents();
321    method @NonNull public java.util.List<android.content.ContentValues> getRows();
322    method @NonNull public java.time.Instant getTime();
323    method public void writeToParcel(@NonNull android.os.Parcel, int);
324    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.RequestLogRecord> CREATOR;
325  }
326
327  public static final class RequestLogRecord.Builder {
328    ctor public RequestLogRecord.Builder();
329    method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord.Builder addRow(@NonNull android.content.ContentValues);
330    method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord build();
331    method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord.Builder setRows(@NonNull java.util.List<android.content.ContentValues>);
332  }
333
334  public class RequestToken {
335  }
336
337  public class SurfacePackageToken {
338  }
339
340  public final class TrainingExampleRecord implements android.os.Parcelable {
341    method public int describeContents();
342    method @Nullable public byte[] getResumptionToken();
343    method @Nullable public byte[] getTrainingExample();
344    method public void writeToParcel(@NonNull android.os.Parcel, int);
345    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.TrainingExampleRecord> CREATOR;
346  }
347
348  public static final class TrainingExampleRecord.Builder {
349    ctor public TrainingExampleRecord.Builder();
350    method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord build();
351    method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord.Builder setResumptionToken(@Nullable byte...);
352    method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord.Builder setTrainingExample(@Nullable byte...);
353  }
354
355  public final class TrainingExamplesInput {
356    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public TrainingExamplesInput(@NonNull String, @NonNull String, @Nullable byte[], @Nullable String);
357    method @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.fcp_model_version_enabled") @Nullable public String getCollectionName();
358    method @NonNull public String getPopulationName();
359    method @Nullable public byte[] getResumptionToken();
360    method @NonNull public String getTaskName();
361  }
362
363  public final class TrainingExamplesOutput {
364    method @NonNull public java.util.List<android.adservices.ondevicepersonalization.TrainingExampleRecord> getTrainingExampleRecords();
365  }
366
367  public static final class TrainingExamplesOutput.Builder {
368    ctor public TrainingExamplesOutput.Builder();
369    method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput.Builder addTrainingExampleRecord(@NonNull android.adservices.ondevicepersonalization.TrainingExampleRecord);
370    method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput build();
371    method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput.Builder setTrainingExampleRecords(@NonNull java.util.List<android.adservices.ondevicepersonalization.TrainingExampleRecord>);
372  }
373
374  public final class TrainingInterval {
375    method @NonNull public java.time.Duration getMinimumInterval();
376    method public int getSchedulingMode();
377    field public static final int SCHEDULING_MODE_ONE_TIME = 1; // 0x1
378    field public static final int SCHEDULING_MODE_RECURRENT = 2; // 0x2
379  }
380
381  public static final class TrainingInterval.Builder {
382    ctor public TrainingInterval.Builder();
383    method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval build();
384    method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval.Builder setMinimumInterval(@NonNull java.time.Duration);
385    method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval.Builder setSchedulingMode(int);
386  }
387
388  public final class UserData implements android.os.Parcelable {
389    method public int describeContents();
390    method @NonNull public java.util.Map<java.lang.String,android.adservices.ondevicepersonalization.AppInfo> getAppInfos();
391    method @IntRange(from=0) public long getAvailableStorageBytes();
392    method @IntRange(from=0, to=100) public int getBatteryPercentage();
393    method @NonNull public String getCarrier();
394    method public int getDataNetworkType();
395    method @Nullable public android.net.NetworkCapabilities getNetworkCapabilities();
396    method public int getOrientation();
397    method @NonNull public java.time.Duration getTimezoneUtcOffset();
398    method public void writeToParcel(@NonNull android.os.Parcel, int);
399    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.UserData> CREATOR;
400  }
401
402  public final class WebTriggerInput {
403    ctor @FlaggedApi("com.android.adservices.ondevicepersonalization.flags.data_class_missing_ctors_and_getters_enabled") public WebTriggerInput(@NonNull android.net.Uri, @NonNull String, @NonNull byte[]);
404    method @NonNull public String getAppPackageName();
405    method @NonNull public byte[] getData();
406    method @NonNull public android.net.Uri getDestinationUrl();
407  }
408
409  public final class WebTriggerOutput {
410    method @NonNull public java.util.List<android.adservices.ondevicepersonalization.EventLogRecord> getEventLogRecords();
411    method @Nullable public android.adservices.ondevicepersonalization.RequestLogRecord getRequestLogRecord();
412  }
413
414  public static final class WebTriggerOutput.Builder {
415    ctor public WebTriggerOutput.Builder();
416    method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder addEventLogRecord(@NonNull android.adservices.ondevicepersonalization.EventLogRecord);
417    method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput build();
418    method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder setEventLogRecords(@NonNull java.util.List<android.adservices.ondevicepersonalization.EventLogRecord>);
419    method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder setRequestLogRecord(@Nullable android.adservices.ondevicepersonalization.RequestLogRecord);
420  }
421
422}
423
424