1// Signature format: 2.0 2package android.adservices.ondevicepersonalization { 3 4 public final class AppInfo implements android.os.Parcelable { 5 ctor 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 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 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 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 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 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 @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 @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 public class FederatedComputeScheduler { 134 method @WorkerThread public void cancel(@NonNull android.adservices.ondevicepersonalization.FederatedComputeInput); 135 method @WorkerThread public void schedule(@NonNull android.adservices.ondevicepersonalization.FederatedComputeScheduler.Params, @NonNull android.adservices.ondevicepersonalization.FederatedComputeInput); 136 } 137 138 public static class FederatedComputeScheduler.Params { 139 ctor public FederatedComputeScheduler.Params(@NonNull android.adservices.ondevicepersonalization.TrainingInterval); 140 method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval getTrainingInterval(); 141 } 142 143 public final class InferenceInput { 144 method public int getBatchSize(); 145 method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput getExpectedOutputStructure(); 146 method @NonNull public Object[] getInputData(); 147 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params getParams(); 148 } 149 150 public static final class InferenceInput.Builder { 151 ctor public InferenceInput.Builder(@NonNull android.adservices.ondevicepersonalization.InferenceInput.Params, @NonNull Object[], @NonNull android.adservices.ondevicepersonalization.InferenceOutput); 152 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput build(); 153 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setBatchSize(int); 154 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setExpectedOutputStructure(@NonNull android.adservices.ondevicepersonalization.InferenceOutput); 155 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setInputData(@NonNull java.lang.Object...); 156 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Builder setParams(@NonNull android.adservices.ondevicepersonalization.InferenceInput.Params); 157 } 158 159 public static class InferenceInput.Params { 160 method public int getDelegateType(); 161 method @NonNull public android.adservices.ondevicepersonalization.KeyValueStore getKeyValueStore(); 162 method @NonNull public String getModelKey(); 163 method public int getModelType(); 164 method @IntRange(from=1) public int getRecommendedNumThreads(); 165 field public static final int DELEGATE_CPU = 1; // 0x1 166 field public static final int MODEL_TYPE_TENSORFLOW_LITE = 1; // 0x1 167 } 168 169 public static final class InferenceInput.Params.Builder { 170 ctor public InferenceInput.Params.Builder(@NonNull android.adservices.ondevicepersonalization.KeyValueStore, @NonNull String); 171 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params build(); 172 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setDelegateType(int); 173 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setKeyValueStore(@NonNull android.adservices.ondevicepersonalization.KeyValueStore); 174 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setModelKey(@NonNull String); 175 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setModelType(int); 176 method @NonNull public android.adservices.ondevicepersonalization.InferenceInput.Params.Builder setRecommendedNumThreads(@IntRange(from=1) int); 177 } 178 179 public final class InferenceOutput { 180 method @NonNull public java.util.Map<java.lang.Integer,java.lang.Object> getDataOutputs(); 181 } 182 183 public static final class InferenceOutput.Builder { 184 ctor public InferenceOutput.Builder(); 185 method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput.Builder addDataOutput(int, @NonNull Object); 186 method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput build(); 187 method @NonNull public android.adservices.ondevicepersonalization.InferenceOutput.Builder setDataOutputs(@NonNull java.util.Map<java.lang.Integer,java.lang.Object>); 188 } 189 190 public abstract class IsolatedService extends android.app.Service { 191 ctor public IsolatedService(); 192 method @NonNull public final android.adservices.ondevicepersonalization.EventUrlProvider getEventUrlProvider(@NonNull android.adservices.ondevicepersonalization.RequestToken); 193 method @NonNull public final android.adservices.ondevicepersonalization.FederatedComputeScheduler getFederatedComputeScheduler(@NonNull android.adservices.ondevicepersonalization.RequestToken); 194 method @NonNull public final android.adservices.ondevicepersonalization.MutableKeyValueStore getLocalData(@NonNull android.adservices.ondevicepersonalization.RequestToken); 195 method @NonNull public final android.adservices.ondevicepersonalization.LogReader getLogReader(@NonNull android.adservices.ondevicepersonalization.RequestToken); 196 method @NonNull public final android.adservices.ondevicepersonalization.ModelManager getModelManager(@NonNull android.adservices.ondevicepersonalization.RequestToken); 197 method @NonNull public final android.adservices.ondevicepersonalization.KeyValueStore getRemoteData(@NonNull android.adservices.ondevicepersonalization.RequestToken); 198 method @Nullable public final android.adservices.ondevicepersonalization.UserData getUserData(@NonNull android.adservices.ondevicepersonalization.RequestToken); 199 method @Nullable public android.os.IBinder onBind(@NonNull android.content.Intent); 200 method @NonNull public abstract android.adservices.ondevicepersonalization.IsolatedWorker onRequest(@NonNull android.adservices.ondevicepersonalization.RequestToken); 201 } 202 203 public final class IsolatedServiceException extends java.lang.Exception { 204 ctor public IsolatedServiceException(int); 205 ctor public IsolatedServiceException(int, @Nullable Throwable); 206 ctor public IsolatedServiceException(int, @Nullable String, @Nullable Throwable); 207 method public int getErrorCode(); 208 } 209 210 public interface IsolatedWorker { 211 method public default void onDownloadCompleted(@NonNull android.adservices.ondevicepersonalization.DownloadCompletedInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.DownloadCompletedOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 212 method public default void onEvent(@NonNull android.adservices.ondevicepersonalization.EventInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.EventOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 213 method public default void onExecute(@NonNull android.adservices.ondevicepersonalization.ExecuteInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.ExecuteOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 214 method public default void onRender(@NonNull android.adservices.ondevicepersonalization.RenderInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.RenderOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 215 method public default void onTrainingExamples(@NonNull android.adservices.ondevicepersonalization.TrainingExamplesInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.TrainingExamplesOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 216 method public default void onWebTrigger(@NonNull android.adservices.ondevicepersonalization.WebTriggerInput, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.WebTriggerOutput,android.adservices.ondevicepersonalization.IsolatedServiceException>); 217 } 218 219 public interface KeyValueStore { 220 method @Nullable @WorkerThread public byte[] get(@NonNull String); 221 method @NonNull @WorkerThread public java.util.Set<java.lang.String> keySet(); 222 } 223 224 public class LogReader { 225 method @NonNull @WorkerThread public java.util.List<android.adservices.ondevicepersonalization.EventLogRecord> getJoinedEvents(@NonNull java.time.Instant, @NonNull java.time.Instant); 226 method @NonNull @WorkerThread public java.util.List<android.adservices.ondevicepersonalization.RequestLogRecord> getRequests(@NonNull java.time.Instant, @NonNull java.time.Instant); 227 } 228 229 public class ModelManager { 230 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>); 231 } 232 233 public interface MutableKeyValueStore extends android.adservices.ondevicepersonalization.KeyValueStore { 234 method @Nullable @WorkerThread public byte[] put(@NonNull String, @NonNull byte[]); 235 method @Nullable @WorkerThread public byte[] remove(@NonNull String); 236 } 237 238 public class OnDevicePersonalizationException extends java.lang.Exception { 239 method public int getErrorCode(); 240 field public static final int ERROR_INFERENCE_FAILED = 9; // 0x9 241 field public static final int ERROR_INFERENCE_MODEL_NOT_FOUND = 8; // 0x8 242 field public static final int ERROR_INVALID_TRAINING_MANIFEST = 7; // 0x7 243 field public static final int ERROR_ISOLATED_SERVICE_FAILED = 1; // 0x1 244 field public static final int ERROR_ISOLATED_SERVICE_LOADING_FAILED = 3; // 0x3 245 field public static final int ERROR_ISOLATED_SERVICE_MANIFEST_PARSING_FAILED = 4; // 0x4 246 field public static final int ERROR_ISOLATED_SERVICE_TIMEOUT = 5; // 0x5 247 field public static final int ERROR_PERSONALIZATION_DISABLED = 2; // 0x2 248 field public static final int ERROR_SCHEDULE_TRAINING_FAILED = 6; // 0x6 249 } 250 251 public class OnDevicePersonalizationManager { 252 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>); 253 method public void executeInIsolatedService(@NonNull android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.ondevicepersonalization.ExecuteInIsolatedServiceResponse,java.lang.Exception>); 254 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>); 255 } 256 257 public static class OnDevicePersonalizationManager.ExecuteResult { 258 method @Nullable public byte[] getOutputData(); 259 method @Nullable public android.adservices.ondevicepersonalization.SurfacePackageToken getSurfacePackageToken(); 260 } 261 262 public final class RenderInput { 263 ctor public RenderInput(int, int, @Nullable android.adservices.ondevicepersonalization.RenderingConfig); 264 method public int getHeight(); 265 method @Nullable public android.adservices.ondevicepersonalization.RenderingConfig getRenderingConfig(); 266 method public int getWidth(); 267 } 268 269 public final class RenderOutput { 270 method @Nullable public String getContent(); 271 method @Nullable public String getTemplateId(); 272 method @NonNull public android.os.PersistableBundle getTemplateParams(); 273 } 274 275 public static final class RenderOutput.Builder { 276 ctor public RenderOutput.Builder(); 277 method @NonNull public android.adservices.ondevicepersonalization.RenderOutput build(); 278 method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setContent(@Nullable String); 279 method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setTemplateId(@Nullable String); 280 method @NonNull public android.adservices.ondevicepersonalization.RenderOutput.Builder setTemplateParams(@NonNull android.os.PersistableBundle); 281 } 282 283 public final class RenderingConfig implements android.os.Parcelable { 284 method public int describeContents(); 285 method @NonNull public java.util.List<java.lang.String> getKeys(); 286 method public void writeToParcel(@NonNull android.os.Parcel, int); 287 field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.RenderingConfig> CREATOR; 288 } 289 290 public static final class RenderingConfig.Builder { 291 ctor public RenderingConfig.Builder(); 292 method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig.Builder addKey(@NonNull String); 293 method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig build(); 294 method @NonNull public android.adservices.ondevicepersonalization.RenderingConfig.Builder setKeys(@NonNull java.util.List<java.lang.String>); 295 } 296 297 public final class RequestLogRecord implements android.os.Parcelable { 298 method public int describeContents(); 299 method @NonNull public java.util.List<android.content.ContentValues> getRows(); 300 method @NonNull public java.time.Instant getTime(); 301 method public void writeToParcel(@NonNull android.os.Parcel, int); 302 field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.RequestLogRecord> CREATOR; 303 } 304 305 public static final class RequestLogRecord.Builder { 306 ctor public RequestLogRecord.Builder(); 307 method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord.Builder addRow(@NonNull android.content.ContentValues); 308 method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord build(); 309 method @NonNull public android.adservices.ondevicepersonalization.RequestLogRecord.Builder setRows(@NonNull java.util.List<android.content.ContentValues>); 310 } 311 312 public class RequestToken { 313 } 314 315 public class SurfacePackageToken { 316 } 317 318 public final class TrainingExampleRecord implements android.os.Parcelable { 319 method public int describeContents(); 320 method @Nullable public byte[] getResumptionToken(); 321 method @Nullable public byte[] getTrainingExample(); 322 method public void writeToParcel(@NonNull android.os.Parcel, int); 323 field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.TrainingExampleRecord> CREATOR; 324 } 325 326 public static final class TrainingExampleRecord.Builder { 327 ctor public TrainingExampleRecord.Builder(); 328 method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord build(); 329 method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord.Builder setResumptionToken(@Nullable byte...); 330 method @NonNull public android.adservices.ondevicepersonalization.TrainingExampleRecord.Builder setTrainingExample(@Nullable byte...); 331 } 332 333 public final class TrainingExamplesInput { 334 ctor public TrainingExamplesInput(@NonNull String, @NonNull String, @Nullable byte[], @Nullable String); 335 method @Nullable public String getCollectionName(); 336 method @NonNull public String getPopulationName(); 337 method @Nullable public byte[] getResumptionToken(); 338 method @NonNull public String getTaskName(); 339 } 340 341 public final class TrainingExamplesOutput { 342 method @NonNull public java.util.List<android.adservices.ondevicepersonalization.TrainingExampleRecord> getTrainingExampleRecords(); 343 } 344 345 public static final class TrainingExamplesOutput.Builder { 346 ctor public TrainingExamplesOutput.Builder(); 347 method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput.Builder addTrainingExampleRecord(@NonNull android.adservices.ondevicepersonalization.TrainingExampleRecord); 348 method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput build(); 349 method @NonNull public android.adservices.ondevicepersonalization.TrainingExamplesOutput.Builder setTrainingExampleRecords(@NonNull java.util.List<android.adservices.ondevicepersonalization.TrainingExampleRecord>); 350 } 351 352 public final class TrainingInterval { 353 method @NonNull public java.time.Duration getMinimumInterval(); 354 method public int getSchedulingMode(); 355 field public static final int SCHEDULING_MODE_ONE_TIME = 1; // 0x1 356 field public static final int SCHEDULING_MODE_RECURRENT = 2; // 0x2 357 } 358 359 public static final class TrainingInterval.Builder { 360 ctor public TrainingInterval.Builder(); 361 method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval build(); 362 method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval.Builder setMinimumInterval(@NonNull java.time.Duration); 363 method @NonNull public android.adservices.ondevicepersonalization.TrainingInterval.Builder setSchedulingMode(int); 364 } 365 366 public final class UserData implements android.os.Parcelable { 367 method public int describeContents(); 368 method @NonNull public java.util.Map<java.lang.String,android.adservices.ondevicepersonalization.AppInfo> getAppInfos(); 369 method @IntRange(from=0) public long getAvailableStorageBytes(); 370 method @IntRange(from=0, to=100) public int getBatteryPercentage(); 371 method @NonNull public String getCarrier(); 372 method public int getDataNetworkType(); 373 method @Nullable public android.net.NetworkCapabilities getNetworkCapabilities(); 374 method public int getOrientation(); 375 method @NonNull public java.time.Duration getTimezoneUtcOffset(); 376 method public void writeToParcel(@NonNull android.os.Parcel, int); 377 field @NonNull public static final android.os.Parcelable.Creator<android.adservices.ondevicepersonalization.UserData> CREATOR; 378 } 379 380 public final class WebTriggerInput { 381 ctor public WebTriggerInput(@NonNull android.net.Uri, @NonNull String, @NonNull byte[]); 382 method @NonNull public String getAppPackageName(); 383 method @NonNull public byte[] getData(); 384 method @NonNull public android.net.Uri getDestinationUrl(); 385 } 386 387 public final class WebTriggerOutput { 388 method @NonNull public java.util.List<android.adservices.ondevicepersonalization.EventLogRecord> getEventLogRecords(); 389 method @Nullable public android.adservices.ondevicepersonalization.RequestLogRecord getRequestLogRecord(); 390 } 391 392 public static final class WebTriggerOutput.Builder { 393 ctor public WebTriggerOutput.Builder(); 394 method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder addEventLogRecord(@NonNull android.adservices.ondevicepersonalization.EventLogRecord); 395 method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput build(); 396 method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder setEventLogRecords(@NonNull java.util.List<android.adservices.ondevicepersonalization.EventLogRecord>); 397 method @NonNull public android.adservices.ondevicepersonalization.WebTriggerOutput.Builder setRequestLogRecord(@Nullable android.adservices.ondevicepersonalization.RequestLogRecord); 398 } 399 400} 401 402