1// Signature format: 2.0
2package android.adservices {
3
4  public class AdServicesState {
5    method public static boolean isAdServicesStateEnabled();
6  }
7
8}
9
10package android.adservices.adid {
11
12  public class AdId {
13    ctor public AdId(@NonNull String, boolean);
14    method @NonNull public String getAdId();
15    method public boolean isLimitAdTrackingEnabled();
16    field public static final String ZERO_OUT = "00000000-0000-0000-0000-000000000000";
17  }
18
19  public class AdIdManager {
20    method @NonNull public static android.adservices.adid.AdIdManager get(@NonNull android.content.Context);
21    method @NonNull @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_ID) public void getAdId(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.adid.AdId,java.lang.Exception>);
22    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @NonNull @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_ID) public void getAdId(@NonNull java.util.concurrent.Executor, @NonNull android.adservices.common.AdServicesOutcomeReceiver<android.adservices.adid.AdId,java.lang.Exception>);
23  }
24
25}
26
27package android.adservices.adselection {
28
29  public final class AdSelectionConfig implements android.os.Parcelable {
30    method public int describeContents();
31    method @NonNull public android.adservices.common.AdSelectionSignals getAdSelectionSignals();
32    method @NonNull public java.util.List<android.adservices.common.AdTechIdentifier> getCustomAudienceBuyers();
33    method @NonNull public android.net.Uri getDecisionLogicUri();
34    method @NonNull public java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.common.AdSelectionSignals> getPerBuyerSignals();
35    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @NonNull public java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.adselection.SignedContextualAds> getPerBuyerSignedContextualAds();
36    method @NonNull public android.adservices.common.AdTechIdentifier getSeller();
37    method @NonNull public android.adservices.common.AdSelectionSignals getSellerSignals();
38    method @NonNull public android.net.Uri getTrustedScoringSignalsUri();
39    method public void writeToParcel(@NonNull android.os.Parcel, int);
40    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.AdSelectionConfig> CREATOR;
41  }
42
43  public static final class AdSelectionConfig.Builder {
44    ctor public AdSelectionConfig.Builder();
45    method @NonNull public android.adservices.adselection.AdSelectionConfig build();
46    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setAdSelectionSignals(@NonNull android.adservices.common.AdSelectionSignals);
47    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setCustomAudienceBuyers(@NonNull java.util.List<android.adservices.common.AdTechIdentifier>);
48    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setDecisionLogicUri(@NonNull android.net.Uri);
49    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setPerBuyerSignals(@NonNull java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.common.AdSelectionSignals>);
50    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setPerBuyerSignedContextualAds(@NonNull java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.adselection.SignedContextualAds>);
51    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setSeller(@NonNull android.adservices.common.AdTechIdentifier);
52    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setSellerSignals(@NonNull android.adservices.common.AdSelectionSignals);
53    method @NonNull public android.adservices.adselection.AdSelectionConfig.Builder setTrustedScoringSignalsUri(@NonNull android.net.Uri);
54  }
55
56  public final class AdSelectionFromOutcomesConfig implements android.os.Parcelable {
57    method public int describeContents();
58    method @NonNull public java.util.List<java.lang.Long> getAdSelectionIds();
59    method @NonNull public android.net.Uri getSelectionLogicUri();
60    method @NonNull public android.adservices.common.AdSelectionSignals getSelectionSignals();
61    method @NonNull public android.adservices.common.AdTechIdentifier getSeller();
62    method public void writeToParcel(@NonNull android.os.Parcel, int);
63    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.AdSelectionFromOutcomesConfig> CREATOR;
64  }
65
66  public static final class AdSelectionFromOutcomesConfig.Builder {
67    ctor public AdSelectionFromOutcomesConfig.Builder();
68    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig build();
69    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig.Builder setAdSelectionIds(@NonNull java.util.List<java.lang.Long>);
70    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig.Builder setSelectionLogicUri(@NonNull android.net.Uri);
71    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig.Builder setSelectionSignals(@NonNull android.adservices.common.AdSelectionSignals);
72    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig.Builder setSeller(@NonNull android.adservices.common.AdTechIdentifier);
73  }
74
75  public class AdSelectionManager {
76    method @NonNull public static android.adservices.adselection.AdSelectionManager get(@NonNull android.content.Context);
77    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void getAdSelectionData(@NonNull android.adservices.adselection.GetAdSelectionDataRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.adselection.GetAdSelectionDataOutcome,java.lang.Exception>);
78    method @NonNull public android.adservices.adselection.TestAdSelectionManager getTestAdSelectionManager();
79    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void persistAdSelectionResult(@NonNull android.adservices.adselection.PersistAdSelectionResultRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.adselection.AdSelectionOutcome,java.lang.Exception>);
80    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void reportEvent(@NonNull android.adservices.adselection.ReportEventRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
81    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void reportImpression(@NonNull android.adservices.adselection.ReportImpressionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
82    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void selectAds(@NonNull android.adservices.adselection.AdSelectionConfig, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.adselection.AdSelectionOutcome,java.lang.Exception>);
83    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void selectAds(@NonNull android.adservices.adselection.AdSelectionFromOutcomesConfig, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.adselection.AdSelectionOutcome,java.lang.Exception>);
84    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void setAppInstallAdvertisers(@NonNull android.adservices.adselection.SetAppInstallAdvertisersRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
85    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void updateAdCounterHistogram(@NonNull android.adservices.adselection.UpdateAdCounterHistogramRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
86  }
87
88  public class AdSelectionOutcome {
89    method @NonNull public long getAdSelectionId();
90    method @NonNull public android.net.Uri getRenderUri();
91    method public boolean hasOutcome();
92    field @NonNull public static final android.adservices.adselection.AdSelectionOutcome NO_OUTCOME;
93  }
94
95  public static final class AdSelectionOutcome.Builder {
96    ctor public AdSelectionOutcome.Builder();
97    method @NonNull public android.adservices.adselection.AdSelectionOutcome build();
98    method @NonNull public android.adservices.adselection.AdSelectionOutcome.Builder setAdSelectionId(long);
99    method @NonNull public android.adservices.adselection.AdSelectionOutcome.Builder setRenderUri(@NonNull android.net.Uri);
100  }
101
102  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public final class AdWithBid implements android.os.Parcelable {
103    ctor public AdWithBid(@NonNull android.adservices.common.AdData, double);
104    method public int describeContents();
105    method @NonNull public android.adservices.common.AdData getAdData();
106    method public double getBid();
107    method public void writeToParcel(@NonNull android.os.Parcel, int);
108    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.AdWithBid> CREATOR;
109  }
110
111  public class AddAdSelectionFromOutcomesOverrideRequest {
112    ctor public AddAdSelectionFromOutcomesOverrideRequest(@NonNull android.adservices.adselection.AdSelectionFromOutcomesConfig, @NonNull String, @NonNull android.adservices.common.AdSelectionSignals);
113    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig getAdSelectionFromOutcomesConfig();
114    method @NonNull public String getOutcomeSelectionLogicJs();
115    method @NonNull public android.adservices.common.AdSelectionSignals getOutcomeSelectionTrustedSignals();
116  }
117
118  public class AddAdSelectionOverrideRequest {
119    ctor @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public AddAdSelectionOverrideRequest(@NonNull android.adservices.adselection.AdSelectionConfig, @NonNull String, @NonNull android.adservices.common.AdSelectionSignals, @NonNull android.adservices.adselection.PerBuyerDecisionLogic);
120    ctor public AddAdSelectionOverrideRequest(@NonNull android.adservices.adselection.AdSelectionConfig, @NonNull String, @NonNull android.adservices.common.AdSelectionSignals);
121    method @NonNull public android.adservices.adselection.AdSelectionConfig getAdSelectionConfig();
122    method @NonNull public String getDecisionLogicJs();
123    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @NonNull public android.adservices.adselection.PerBuyerDecisionLogic getPerBuyerDecisionLogic();
124    method @NonNull public android.adservices.common.AdSelectionSignals getTrustedScoringSignals();
125  }
126
127  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public final class DecisionLogic implements android.os.Parcelable {
128    ctor public DecisionLogic(@NonNull String);
129    method public int describeContents();
130    method @NonNull public String getLogic();
131    method public void writeToParcel(@NonNull android.os.Parcel, int);
132    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.DecisionLogic> CREATOR;
133  }
134
135  public final class GetAdSelectionDataOutcome {
136    method @Nullable public byte[] getAdSelectionData();
137    method @FlaggedApi("com.android.adservices.flags.fledge_auction_server_get_ad_selection_data_id_enabled") public long getAdSelectionDataId();
138    method @Deprecated public long getAdSelectionId();
139  }
140
141  public final class GetAdSelectionDataRequest {
142    method @FlaggedApi("com.android.adservices.flags.fledge_server_auction_multi_cloud_enabled") @Nullable public android.net.Uri getCoordinatorOriginUri();
143    method @Nullable public android.adservices.common.AdTechIdentifier getSeller();
144    method @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") @Nullable public android.adservices.adselection.SellerConfiguration getSellerConfiguration();
145  }
146
147  public static final class GetAdSelectionDataRequest.Builder {
148    ctor public GetAdSelectionDataRequest.Builder();
149    method @NonNull public android.adservices.adselection.GetAdSelectionDataRequest build();
150    method @FlaggedApi("com.android.adservices.flags.fledge_server_auction_multi_cloud_enabled") @NonNull public android.adservices.adselection.GetAdSelectionDataRequest.Builder setCoordinatorOriginUri(@Nullable android.net.Uri);
151    method @NonNull public android.adservices.adselection.GetAdSelectionDataRequest.Builder setSeller(@Nullable android.adservices.common.AdTechIdentifier);
152    method @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") @NonNull public android.adservices.adselection.GetAdSelectionDataRequest.Builder setSellerConfiguration(@Nullable android.adservices.adselection.SellerConfiguration);
153  }
154
155  @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") public final class PerBuyerConfiguration implements android.os.Parcelable {
156    method public int describeContents();
157    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
158    method @IntRange(from=0, to=java.lang.Integer.MAX_VALUE) public int getTargetInputSizeBytes();
159    method public void writeToParcel(@NonNull android.os.Parcel, int);
160    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.PerBuyerConfiguration> CREATOR;
161  }
162
163  public static final class PerBuyerConfiguration.Builder {
164    ctor public PerBuyerConfiguration.Builder();
165    method @NonNull public android.adservices.adselection.PerBuyerConfiguration build();
166    method @NonNull public android.adservices.adselection.PerBuyerConfiguration.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
167    method @NonNull public android.adservices.adselection.PerBuyerConfiguration.Builder setTargetInputSizeBytes(@IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int);
168  }
169
170  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public final class PerBuyerDecisionLogic implements android.os.Parcelable {
171    ctor public PerBuyerDecisionLogic(@NonNull java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.adselection.DecisionLogic>);
172    method public int describeContents();
173    method @NonNull public java.util.Map<android.adservices.common.AdTechIdentifier,android.adservices.adselection.DecisionLogic> getPerBuyerLogicMap();
174    method public void writeToParcel(@NonNull android.os.Parcel, int);
175    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.PerBuyerDecisionLogic> CREATOR;
176    field @NonNull public static final android.adservices.adselection.PerBuyerDecisionLogic EMPTY;
177  }
178
179  public final class PersistAdSelectionResultRequest {
180    method @FlaggedApi("com.android.adservices.flags.fledge_auction_server_get_ad_selection_data_id_enabled") public long getAdSelectionDataId();
181    method @Deprecated public long getAdSelectionId();
182    method @Nullable public byte[] getAdSelectionResult();
183    method @Nullable public android.adservices.common.AdTechIdentifier getSeller();
184  }
185
186  public static final class PersistAdSelectionResultRequest.Builder {
187    ctor public PersistAdSelectionResultRequest.Builder();
188    method @NonNull public android.adservices.adselection.PersistAdSelectionResultRequest build();
189    method @FlaggedApi("com.android.adservices.flags.fledge_auction_server_get_ad_selection_data_id_enabled") @NonNull public android.adservices.adselection.PersistAdSelectionResultRequest.Builder setAdSelectionDataId(long);
190    method @Deprecated @NonNull public android.adservices.adselection.PersistAdSelectionResultRequest.Builder setAdSelectionId(long);
191    method @NonNull public android.adservices.adselection.PersistAdSelectionResultRequest.Builder setAdSelectionResult(@Nullable byte[]);
192    method @NonNull public android.adservices.adselection.PersistAdSelectionResultRequest.Builder setSeller(@Nullable android.adservices.common.AdTechIdentifier);
193  }
194
195  public class RemoveAdSelectionFromOutcomesOverrideRequest {
196    ctor public RemoveAdSelectionFromOutcomesOverrideRequest(@NonNull android.adservices.adselection.AdSelectionFromOutcomesConfig);
197    method @NonNull public android.adservices.adselection.AdSelectionFromOutcomesConfig getAdSelectionFromOutcomesConfig();
198  }
199
200  public class RemoveAdSelectionOverrideRequest {
201    ctor public RemoveAdSelectionOverrideRequest(@NonNull android.adservices.adselection.AdSelectionConfig);
202    method @NonNull public android.adservices.adselection.AdSelectionConfig getAdSelectionConfig();
203  }
204
205  public class ReportEventRequest {
206    method public long getAdSelectionId();
207    method @NonNull public String getData();
208    method @Nullable public android.view.InputEvent getInputEvent();
209    method @NonNull public String getKey();
210    method public int getReportingDestinations();
211    field public static final int FLAG_REPORTING_DESTINATION_BUYER = 2; // 0x2
212    field public static final int FLAG_REPORTING_DESTINATION_SELLER = 1; // 0x1
213  }
214
215  public static final class ReportEventRequest.Builder {
216    ctor public ReportEventRequest.Builder(long, @NonNull String, @NonNull String, int);
217    method @NonNull public android.adservices.adselection.ReportEventRequest build();
218    method @NonNull public android.adservices.adselection.ReportEventRequest.Builder setAdSelectionId(long);
219    method @NonNull public android.adservices.adselection.ReportEventRequest.Builder setData(@NonNull String);
220    method @NonNull public android.adservices.adselection.ReportEventRequest.Builder setInputEvent(@Nullable android.view.InputEvent);
221    method @NonNull public android.adservices.adselection.ReportEventRequest.Builder setKey(@NonNull String);
222    method @NonNull public android.adservices.adselection.ReportEventRequest.Builder setReportingDestinations(int);
223  }
224
225  public class ReportImpressionRequest {
226    ctor public ReportImpressionRequest(long, @NonNull android.adservices.adselection.AdSelectionConfig);
227    ctor public ReportImpressionRequest(long);
228    method @NonNull public android.adservices.adselection.AdSelectionConfig getAdSelectionConfig();
229    method public long getAdSelectionId();
230  }
231
232  @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") public final class SellerConfiguration implements android.os.Parcelable {
233    method public int describeContents();
234    method @IntRange(from=1, to=java.lang.Integer.MAX_VALUE) public int getMaximumPayloadSizeBytes();
235    method @NonNull public java.util.Set<android.adservices.adselection.PerBuyerConfiguration> getPerBuyerConfigurations();
236    method public void writeToParcel(@NonNull android.os.Parcel, int);
237    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.SellerConfiguration> CREATOR;
238  }
239
240  public static final class SellerConfiguration.Builder {
241    ctor public SellerConfiguration.Builder();
242    method @NonNull public android.adservices.adselection.SellerConfiguration build();
243    method @NonNull public android.adservices.adselection.SellerConfiguration.Builder setMaximumPayloadSizeBytes(@IntRange(from=1, to=java.lang.Integer.MAX_VALUE) int);
244    method @NonNull public android.adservices.adselection.SellerConfiguration.Builder setPerBuyerConfigurations(@NonNull java.util.Set<android.adservices.adselection.PerBuyerConfiguration>);
245  }
246
247  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public class SetAppInstallAdvertisersRequest {
248    method @NonNull public java.util.Set<android.adservices.common.AdTechIdentifier> getAdvertisers();
249  }
250
251  public static final class SetAppInstallAdvertisersRequest.Builder {
252    ctor public SetAppInstallAdvertisersRequest.Builder();
253    method @NonNull public android.adservices.adselection.SetAppInstallAdvertisersRequest build();
254    method @NonNull public android.adservices.adselection.SetAppInstallAdvertisersRequest.Builder setAdvertisers(@NonNull java.util.Set<android.adservices.common.AdTechIdentifier>);
255  }
256
257  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public final class SignedContextualAds implements android.os.Parcelable {
258    method public int describeContents();
259    method @NonNull public java.util.List<android.adservices.adselection.AdWithBid> getAdsWithBid();
260    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
261    method @NonNull public android.net.Uri getDecisionLogicUri();
262    method @NonNull public byte[] getSignature();
263    method public void writeToParcel(@NonNull android.os.Parcel, int);
264    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.adselection.SignedContextualAds> CREATOR;
265  }
266
267  public static final class SignedContextualAds.Builder {
268    ctor public SignedContextualAds.Builder();
269    ctor public SignedContextualAds.Builder(@NonNull android.adservices.adselection.SignedContextualAds);
270    method @NonNull public android.adservices.adselection.SignedContextualAds build();
271    method @NonNull public android.adservices.adselection.SignedContextualAds.Builder setAdsWithBid(@NonNull java.util.List<android.adservices.adselection.AdWithBid>);
272    method @NonNull public android.adservices.adselection.SignedContextualAds.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
273    method @NonNull public android.adservices.adselection.SignedContextualAds.Builder setDecisionLogicUri(@NonNull android.net.Uri);
274    method @NonNull public android.adservices.adselection.SignedContextualAds.Builder setSignature(@NonNull byte[]);
275  }
276
277  public class TestAdSelectionManager {
278    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void overrideAdSelectionConfigRemoteInfo(@NonNull android.adservices.adselection.AddAdSelectionOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
279    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void overrideAdSelectionFromOutcomesConfigRemoteInfo(@NonNull android.adservices.adselection.AddAdSelectionFromOutcomesOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
280    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void removeAdSelectionConfigRemoteInfoOverride(@NonNull android.adservices.adselection.RemoveAdSelectionOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
281    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void removeAdSelectionFromOutcomesConfigRemoteInfoOverride(@NonNull android.adservices.adselection.RemoveAdSelectionFromOutcomesOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
282    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void resetAllAdSelectionConfigRemoteOverrides(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
283    method @RequiresPermission(anyOf={android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS, android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_AD_SELECTION}) public void resetAllAdSelectionFromOutcomesConfigRemoteOverrides(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
284  }
285
286  public class UpdateAdCounterHistogramRequest {
287    method public int getAdEventType();
288    method public long getAdSelectionId();
289    method @NonNull public android.adservices.common.AdTechIdentifier getCallerAdTech();
290  }
291
292  public static final class UpdateAdCounterHistogramRequest.Builder {
293    ctor public UpdateAdCounterHistogramRequest.Builder(long, int, @NonNull android.adservices.common.AdTechIdentifier);
294    method @NonNull public android.adservices.adselection.UpdateAdCounterHistogramRequest build();
295    method @NonNull public android.adservices.adselection.UpdateAdCounterHistogramRequest.Builder setAdEventType(int);
296    method @NonNull public android.adservices.adselection.UpdateAdCounterHistogramRequest.Builder setAdSelectionId(long);
297    method @NonNull public android.adservices.adselection.UpdateAdCounterHistogramRequest.Builder setCallerAdTech(@NonNull android.adservices.common.AdTechIdentifier);
298  }
299
300}
301
302package android.adservices.appsetid {
303
304  public class AppSetId {
305    ctor public AppSetId(@NonNull String, int);
306    method @NonNull public String getId();
307    method public int getScope();
308    field public static final int SCOPE_APP = 1; // 0x1
309    field public static final int SCOPE_DEVELOPER = 2; // 0x2
310  }
311
312  public class AppSetIdManager {
313    method @NonNull public static android.adservices.appsetid.AppSetIdManager get(@NonNull android.content.Context);
314    method @NonNull public void getAppSetId(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.appsetid.AppSetId,java.lang.Exception>);
315  }
316
317}
318
319package android.adservices.common {
320
321  public final class AdData implements android.os.Parcelable {
322    method public int describeContents();
323    method @NonNull public java.util.Set<java.lang.Integer> getAdCounterKeys();
324    method @Nullable public android.adservices.common.AdFilters getAdFilters();
325    method @Nullable public String getAdRenderId();
326    method @NonNull public String getMetadata();
327    method @NonNull public android.net.Uri getRenderUri();
328    method public void writeToParcel(@NonNull android.os.Parcel, int);
329    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.AdData> CREATOR;
330  }
331
332  public static final class AdData.Builder {
333    ctor public AdData.Builder();
334    method @NonNull public android.adservices.common.AdData build();
335    method @NonNull public android.adservices.common.AdData.Builder setAdCounterKeys(@NonNull java.util.Set<java.lang.Integer>);
336    method @NonNull public android.adservices.common.AdData.Builder setAdFilters(@Nullable android.adservices.common.AdFilters);
337    method @NonNull public android.adservices.common.AdData.Builder setAdRenderId(@Nullable String);
338    method @NonNull public android.adservices.common.AdData.Builder setMetadata(@NonNull String);
339    method @NonNull public android.adservices.common.AdData.Builder setRenderUri(@NonNull android.net.Uri);
340  }
341
342  public final class AdFilters implements android.os.Parcelable {
343    method public int describeContents();
344    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @Nullable public android.adservices.common.AppInstallFilters getAppInstallFilters();
345    method @Nullable public android.adservices.common.FrequencyCapFilters getFrequencyCapFilters();
346    method public void writeToParcel(@NonNull android.os.Parcel, int);
347    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.AdFilters> CREATOR;
348  }
349
350  public static final class AdFilters.Builder {
351    ctor public AdFilters.Builder();
352    method @NonNull public android.adservices.common.AdFilters build();
353    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @NonNull public android.adservices.common.AdFilters.Builder setAppInstallFilters(@Nullable android.adservices.common.AppInstallFilters);
354    method @NonNull public android.adservices.common.AdFilters.Builder setFrequencyCapFilters(@Nullable android.adservices.common.FrequencyCapFilters);
355  }
356
357  public final class AdSelectionSignals implements android.os.Parcelable {
358    method public int describeContents();
359    method @NonNull public static android.adservices.common.AdSelectionSignals fromString(@NonNull String);
360    method public void writeToParcel(@NonNull android.os.Parcel, int);
361    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.AdSelectionSignals> CREATOR;
362    field public static final android.adservices.common.AdSelectionSignals EMPTY;
363  }
364
365  public interface AdServicesOutcomeReceiver<R, E extends java.lang.Throwable> {
366    method public default void onError(@NonNull E);
367    method public void onResult(R);
368  }
369
370  public class AdServicesPermissions {
371    field public static final String ACCESS_ADSERVICES_AD_ID = "android.permission.ACCESS_ADSERVICES_AD_ID";
372    field @FlaggedApi("com.android.adservices.flags.protected_signals_enabled") public static final String ACCESS_ADSERVICES_AD_SELECTION = "android.permission.ACCESS_ADSERVICES_AD_SELECTION";
373    field public static final String ACCESS_ADSERVICES_ATTRIBUTION = "android.permission.ACCESS_ADSERVICES_ATTRIBUTION";
374    field public static final String ACCESS_ADSERVICES_CUSTOM_AUDIENCE = "android.permission.ACCESS_ADSERVICES_CUSTOM_AUDIENCE";
375    field @FlaggedApi("com.android.adservices.flags.protected_signals_enabled") public static final String ACCESS_ADSERVICES_PROTECTED_SIGNALS = "android.permission.ACCESS_ADSERVICES_PROTECTED_SIGNALS";
376    field public static final String ACCESS_ADSERVICES_TOPICS = "android.permission.ACCESS_ADSERVICES_TOPICS";
377  }
378
379  public final class AdTechIdentifier implements android.os.Parcelable {
380    method public int describeContents();
381    method @NonNull public static android.adservices.common.AdTechIdentifier fromString(@NonNull String);
382    method public void writeToParcel(@NonNull android.os.Parcel, int);
383    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.AdTechIdentifier> CREATOR;
384  }
385
386  @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public final class AppInstallFilters implements android.os.Parcelable {
387    method public int describeContents();
388    method @NonNull public java.util.Set<java.lang.String> getPackageNames();
389    method public void writeToParcel(@NonNull android.os.Parcel, int);
390    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.AppInstallFilters> CREATOR;
391  }
392
393  public static final class AppInstallFilters.Builder {
394    ctor public AppInstallFilters.Builder();
395    method @NonNull public android.adservices.common.AppInstallFilters build();
396    method @NonNull public android.adservices.common.AppInstallFilters.Builder setPackageNames(@NonNull java.util.Set<java.lang.String>);
397  }
398
399  public final class FrequencyCapFilters implements android.os.Parcelable {
400    method public int describeContents();
401    method @NonNull public java.util.List<android.adservices.common.KeyedFrequencyCap> getKeyedFrequencyCapsForClickEvents();
402    method @NonNull public java.util.List<android.adservices.common.KeyedFrequencyCap> getKeyedFrequencyCapsForImpressionEvents();
403    method @NonNull public java.util.List<android.adservices.common.KeyedFrequencyCap> getKeyedFrequencyCapsForViewEvents();
404    method @NonNull public java.util.List<android.adservices.common.KeyedFrequencyCap> getKeyedFrequencyCapsForWinEvents();
405    method public void writeToParcel(@NonNull android.os.Parcel, int);
406    field public static final int AD_EVENT_TYPE_CLICK = 3; // 0x3
407    field public static final int AD_EVENT_TYPE_IMPRESSION = 1; // 0x1
408    field public static final int AD_EVENT_TYPE_VIEW = 2; // 0x2
409    field public static final int AD_EVENT_TYPE_WIN = 0; // 0x0
410    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.FrequencyCapFilters> CREATOR;
411  }
412
413  public static final class FrequencyCapFilters.Builder {
414    ctor public FrequencyCapFilters.Builder();
415    method @NonNull public android.adservices.common.FrequencyCapFilters build();
416    method @NonNull public android.adservices.common.FrequencyCapFilters.Builder setKeyedFrequencyCapsForClickEvents(@NonNull java.util.List<android.adservices.common.KeyedFrequencyCap>);
417    method @NonNull public android.adservices.common.FrequencyCapFilters.Builder setKeyedFrequencyCapsForImpressionEvents(@NonNull java.util.List<android.adservices.common.KeyedFrequencyCap>);
418    method @NonNull public android.adservices.common.FrequencyCapFilters.Builder setKeyedFrequencyCapsForViewEvents(@NonNull java.util.List<android.adservices.common.KeyedFrequencyCap>);
419    method @NonNull public android.adservices.common.FrequencyCapFilters.Builder setKeyedFrequencyCapsForWinEvents(@NonNull java.util.List<android.adservices.common.KeyedFrequencyCap>);
420  }
421
422  public final class KeyedFrequencyCap implements android.os.Parcelable {
423    method public int describeContents();
424    method @NonNull public int getAdCounterKey();
425    method @NonNull public java.time.Duration getInterval();
426    method public int getMaxCount();
427    method public void writeToParcel(@NonNull android.os.Parcel, int);
428    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.common.KeyedFrequencyCap> CREATOR;
429  }
430
431  public static final class KeyedFrequencyCap.Builder {
432    ctor public KeyedFrequencyCap.Builder(int, int, @NonNull java.time.Duration);
433    method @NonNull public android.adservices.common.KeyedFrequencyCap build();
434    method @NonNull public android.adservices.common.KeyedFrequencyCap.Builder setAdCounterKey(int);
435    method @NonNull public android.adservices.common.KeyedFrequencyCap.Builder setInterval(@NonNull java.time.Duration);
436    method @NonNull public android.adservices.common.KeyedFrequencyCap.Builder setMaxCount(int);
437  }
438
439}
440
441package android.adservices.customaudience {
442
443  public class AddCustomAudienceOverrideRequest {
444    ctor public AddCustomAudienceOverrideRequest(@NonNull android.adservices.common.AdTechIdentifier, @NonNull String, @NonNull String, @NonNull android.adservices.common.AdSelectionSignals);
445    method @NonNull public String getBiddingLogicJs();
446    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") public long getBiddingLogicJsVersion();
447    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
448    method @NonNull public String getName();
449    method @NonNull public android.adservices.common.AdSelectionSignals getTrustedBiddingSignals();
450  }
451
452  public static final class AddCustomAudienceOverrideRequest.Builder {
453    ctor public AddCustomAudienceOverrideRequest.Builder();
454    method @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest build();
455    method @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest.Builder setBiddingLogicJs(@NonNull String);
456    method @FlaggedApi("com.android.adservices.flags.fledge_ad_selection_filtering_enabled") @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest.Builder setBiddingLogicJsVersion(long);
457    method @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
458    method @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest.Builder setName(@NonNull String);
459    method @NonNull public android.adservices.customaudience.AddCustomAudienceOverrideRequest.Builder setTrustedBiddingSignals(@NonNull android.adservices.common.AdSelectionSignals);
460  }
461
462  public final class CustomAudience implements android.os.Parcelable {
463    method public int describeContents();
464    method @Nullable public java.time.Instant getActivationTime();
465    method @NonNull public java.util.List<android.adservices.common.AdData> getAds();
466    method @FlaggedApi("com.android.adservices.flags.fledge_custom_audience_auction_server_request_flags_enabled") public int getAuctionServerRequestFlags();
467    method @NonNull public android.net.Uri getBiddingLogicUri();
468    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
469    method @NonNull public android.net.Uri getDailyUpdateUri();
470    method @Nullable public java.time.Instant getExpirationTime();
471    method @NonNull public String getName();
472    method @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") public double getPriority();
473    method @Nullable public android.adservices.customaudience.TrustedBiddingData getTrustedBiddingData();
474    method @Nullable public android.adservices.common.AdSelectionSignals getUserBiddingSignals();
475    method public void writeToParcel(@NonNull android.os.Parcel, int);
476    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.customaudience.CustomAudience> CREATOR;
477    field @FlaggedApi("com.android.adservices.flags.fledge_custom_audience_auction_server_request_flags_enabled") public static final int FLAG_AUCTION_SERVER_REQUEST_OMIT_ADS = 1; // 0x1
478  }
479
480  public static final class CustomAudience.Builder {
481    ctor public CustomAudience.Builder();
482    method @NonNull public android.adservices.customaudience.CustomAudience build();
483    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setActivationTime(@Nullable java.time.Instant);
484    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setAds(@Nullable java.util.List<android.adservices.common.AdData>);
485    method @FlaggedApi("com.android.adservices.flags.fledge_custom_audience_auction_server_request_flags_enabled") @NonNull public android.adservices.customaudience.CustomAudience.Builder setAuctionServerRequestFlags(int);
486    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setBiddingLogicUri(@NonNull android.net.Uri);
487    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
488    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setDailyUpdateUri(@NonNull android.net.Uri);
489    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setExpirationTime(@Nullable java.time.Instant);
490    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setName(@NonNull String);
491    method @FlaggedApi("com.android.adservices.flags.fledge_get_ad_selection_data_seller_configuration_enabled") @NonNull public android.adservices.customaudience.CustomAudience.Builder setPriority(double);
492    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setTrustedBiddingData(@Nullable android.adservices.customaudience.TrustedBiddingData);
493    method @NonNull public android.adservices.customaudience.CustomAudience.Builder setUserBiddingSignals(@Nullable android.adservices.common.AdSelectionSignals);
494  }
495
496  public class CustomAudienceManager {
497    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void fetchAndJoinCustomAudience(@NonNull android.adservices.customaudience.FetchAndJoinCustomAudienceRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
498    method @NonNull public static android.adservices.customaudience.CustomAudienceManager get(@NonNull android.content.Context);
499    method @NonNull public android.adservices.customaudience.TestCustomAudienceManager getTestCustomAudienceManager();
500    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void joinCustomAudience(@NonNull android.adservices.customaudience.JoinCustomAudienceRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
501    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void leaveCustomAudience(@NonNull android.adservices.customaudience.LeaveCustomAudienceRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
502    method @FlaggedApi("com.android.adservices.flags.fledge_schedule_custom_audience_update_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void scheduleCustomAudienceUpdate(@NonNull android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest, @NonNull java.util.concurrent.Executor, @NonNull android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
503  }
504
505  public final class FetchAndJoinCustomAudienceRequest {
506    method @Nullable public java.time.Instant getActivationTime();
507    method @Nullable public java.time.Instant getExpirationTime();
508    method @NonNull public android.net.Uri getFetchUri();
509    method @Nullable public String getName();
510    method @Nullable public android.adservices.common.AdSelectionSignals getUserBiddingSignals();
511  }
512
513  public static final class FetchAndJoinCustomAudienceRequest.Builder {
514    ctor public FetchAndJoinCustomAudienceRequest.Builder(@NonNull android.net.Uri);
515    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest build();
516    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest.Builder setActivationTime(@Nullable java.time.Instant);
517    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest.Builder setExpirationTime(@Nullable java.time.Instant);
518    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest.Builder setFetchUri(@NonNull android.net.Uri);
519    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest.Builder setName(@Nullable String);
520    method @NonNull public android.adservices.customaudience.FetchAndJoinCustomAudienceRequest.Builder setUserBiddingSignals(@Nullable android.adservices.common.AdSelectionSignals);
521  }
522
523  public class JoinCustomAudienceRequest {
524    method @NonNull public android.adservices.customaudience.CustomAudience getCustomAudience();
525  }
526
527  public static final class JoinCustomAudienceRequest.Builder {
528    ctor public JoinCustomAudienceRequest.Builder();
529    method @NonNull public android.adservices.customaudience.JoinCustomAudienceRequest build();
530    method @NonNull public android.adservices.customaudience.JoinCustomAudienceRequest.Builder setCustomAudience(@NonNull android.adservices.customaudience.CustomAudience);
531  }
532
533  public final class LeaveCustomAudienceRequest {
534    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
535    method @NonNull public String getName();
536  }
537
538  public static final class LeaveCustomAudienceRequest.Builder {
539    ctor public LeaveCustomAudienceRequest.Builder();
540    method @NonNull public android.adservices.customaudience.LeaveCustomAudienceRequest build();
541    method @NonNull public android.adservices.customaudience.LeaveCustomAudienceRequest.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
542    method @NonNull public android.adservices.customaudience.LeaveCustomAudienceRequest.Builder setName(@NonNull String);
543  }
544
545  @FlaggedApi("com.android.adservices.flags.fledge_schedule_custom_audience_update_enabled") public final class PartialCustomAudience implements android.os.Parcelable {
546    method public int describeContents();
547    method @Nullable public java.time.Instant getActivationTime();
548    method @Nullable public java.time.Instant getExpirationTime();
549    method @NonNull public String getName();
550    method @Nullable public android.adservices.common.AdSelectionSignals getUserBiddingSignals();
551    method public void writeToParcel(@NonNull android.os.Parcel, int);
552    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.customaudience.PartialCustomAudience> CREATOR;
553  }
554
555  public static final class PartialCustomAudience.Builder {
556    ctor public PartialCustomAudience.Builder(@NonNull String);
557    method @NonNull public android.adservices.customaudience.PartialCustomAudience build();
558    method @NonNull public android.adservices.customaudience.PartialCustomAudience.Builder setActivationTime(@Nullable java.time.Instant);
559    method @NonNull public android.adservices.customaudience.PartialCustomAudience.Builder setExpirationTime(@Nullable java.time.Instant);
560    method @NonNull public android.adservices.customaudience.PartialCustomAudience.Builder setUserBiddingSignals(@Nullable android.adservices.common.AdSelectionSignals);
561  }
562
563  public class RemoveCustomAudienceOverrideRequest {
564    ctor public RemoveCustomAudienceOverrideRequest(@NonNull android.adservices.common.AdTechIdentifier, @NonNull String);
565    method @NonNull public android.adservices.common.AdTechIdentifier getBuyer();
566    method @NonNull public String getName();
567  }
568
569  public static final class RemoveCustomAudienceOverrideRequest.Builder {
570    ctor public RemoveCustomAudienceOverrideRequest.Builder();
571    method @NonNull public android.adservices.customaudience.RemoveCustomAudienceOverrideRequest build();
572    method @NonNull public android.adservices.customaudience.RemoveCustomAudienceOverrideRequest.Builder setBuyer(@NonNull android.adservices.common.AdTechIdentifier);
573    method @NonNull public android.adservices.customaudience.RemoveCustomAudienceOverrideRequest.Builder setName(@NonNull String);
574  }
575
576  @FlaggedApi("com.android.adservices.flags.fledge_schedule_custom_audience_update_enabled") public final class ScheduleCustomAudienceUpdateRequest {
577    method @NonNull public java.time.Duration getMinDelay();
578    method @NonNull public java.util.List<android.adservices.customaudience.PartialCustomAudience> getPartialCustomAudienceList();
579    method @NonNull public android.net.Uri getUpdateUri();
580    method public boolean shouldReplacePendingUpdates();
581  }
582
583  @FlaggedApi("com.android.adservices.flags.fledge_schedule_custom_audience_update_enabled") public static final class ScheduleCustomAudienceUpdateRequest.Builder {
584    ctor public ScheduleCustomAudienceUpdateRequest.Builder(@NonNull android.net.Uri, @NonNull java.time.Duration, @NonNull java.util.List<android.adservices.customaudience.PartialCustomAudience>);
585    method @NonNull public android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest build();
586    method @NonNull public android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest.Builder setMinDelay(@NonNull java.time.Duration);
587    method @NonNull public android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest.Builder setPartialCustomAudienceList(@NonNull java.util.List<android.adservices.customaudience.PartialCustomAudience>);
588    method @NonNull public android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest.Builder setShouldReplacePendingUpdates(boolean);
589    method @NonNull public android.adservices.customaudience.ScheduleCustomAudienceUpdateRequest.Builder setUpdateUri(@NonNull android.net.Uri);
590  }
591
592  public class TestCustomAudienceManager {
593    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void overrideCustomAudienceRemoteInfo(@NonNull android.adservices.customaudience.AddCustomAudienceOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
594    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void removeCustomAudienceRemoteInfoOverride(@NonNull android.adservices.customaudience.RemoveCustomAudienceOverrideRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
595    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE) public void resetAllCustomAudienceOverrides(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
596  }
597
598  public final class TrustedBiddingData implements android.os.Parcelable {
599    method public int describeContents();
600    method @NonNull public java.util.List<java.lang.String> getTrustedBiddingKeys();
601    method @NonNull public android.net.Uri getTrustedBiddingUri();
602    method public void writeToParcel(@NonNull android.os.Parcel, int);
603    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.customaudience.TrustedBiddingData> CREATOR;
604  }
605
606  public static final class TrustedBiddingData.Builder {
607    ctor public TrustedBiddingData.Builder();
608    method @NonNull public android.adservices.customaudience.TrustedBiddingData build();
609    method @NonNull public android.adservices.customaudience.TrustedBiddingData.Builder setTrustedBiddingKeys(@NonNull java.util.List<java.lang.String>);
610    method @NonNull public android.adservices.customaudience.TrustedBiddingData.Builder setTrustedBiddingUri(@NonNull android.net.Uri);
611  }
612
613}
614
615package android.adservices.exceptions {
616
617  public class AdServicesException extends java.lang.Exception {
618    ctor public AdServicesException(@Nullable String, @Nullable Throwable);
619    ctor public AdServicesException(@Nullable String);
620  }
621
622}
623
624package android.adservices.measurement {
625
626  public class DeletionRequest {
627    method public int getDeletionMode();
628    method @NonNull public java.util.List<android.net.Uri> getDomainUris();
629    method @NonNull public java.time.Instant getEnd();
630    method public int getMatchBehavior();
631    method @NonNull public java.util.List<android.net.Uri> getOriginUris();
632    method @NonNull public java.time.Instant getStart();
633    field public static final int DELETION_MODE_ALL = 0; // 0x0
634    field public static final int DELETION_MODE_EXCLUDE_INTERNAL_DATA = 1; // 0x1
635    field public static final int MATCH_BEHAVIOR_DELETE = 0; // 0x0
636    field public static final int MATCH_BEHAVIOR_PRESERVE = 1; // 0x1
637  }
638
639  public static final class DeletionRequest.Builder {
640    ctor public DeletionRequest.Builder();
641    method @NonNull public android.adservices.measurement.DeletionRequest build();
642    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setDeletionMode(int);
643    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setDomainUris(@Nullable java.util.List<android.net.Uri>);
644    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setEnd(@NonNull java.time.Instant);
645    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setMatchBehavior(int);
646    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setOriginUris(@Nullable java.util.List<android.net.Uri>);
647    method @NonNull public android.adservices.measurement.DeletionRequest.Builder setStart(@NonNull java.time.Instant);
648  }
649
650  public class MeasurementManager {
651    method public void deleteRegistrations(@NonNull android.adservices.measurement.DeletionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
652    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") public void deleteRegistrations(@NonNull android.adservices.measurement.DeletionRequest, @NonNull java.util.concurrent.Executor, @NonNull android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
653    method @NonNull public static android.adservices.measurement.MeasurementManager get(@NonNull android.content.Context);
654    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void getMeasurementApiStatus(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Integer,java.lang.Exception>);
655    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void getMeasurementApiStatus(@NonNull java.util.concurrent.Executor, @NonNull android.adservices.common.AdServicesOutcomeReceiver<java.lang.Integer,java.lang.Exception>);
656    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerSource(@NonNull android.net.Uri, @Nullable android.view.InputEvent, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
657    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerSource(@NonNull android.net.Uri, @Nullable android.view.InputEvent, @Nullable java.util.concurrent.Executor, @Nullable android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
658    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerSource(@NonNull android.adservices.measurement.SourceRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
659    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerSource(@NonNull android.adservices.measurement.SourceRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
660    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerTrigger(@NonNull android.net.Uri, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
661    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerTrigger(@NonNull android.net.Uri, @Nullable java.util.concurrent.Executor, @Nullable android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
662    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerWebSource(@NonNull android.adservices.measurement.WebSourceRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
663    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerWebSource(@NonNull android.adservices.measurement.WebSourceRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
664    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerWebTrigger(@NonNull android.adservices.measurement.WebTriggerRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
665    method @FlaggedApi("com.android.adservices.flags.adservices_outcomereceiver_r_api_enabled") @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_ATTRIBUTION) public void registerWebTrigger(@NonNull android.adservices.measurement.WebTriggerRegistrationRequest, @Nullable java.util.concurrent.Executor, @Nullable android.adservices.common.AdServicesOutcomeReceiver<java.lang.Object,java.lang.Exception>);
666    field public static final int MEASUREMENT_API_STATE_DISABLED = 0; // 0x0
667    field public static final int MEASUREMENT_API_STATE_ENABLED = 1; // 0x1
668  }
669
670  public final class SourceRegistrationRequest implements android.os.Parcelable {
671    method public int describeContents();
672    method @Nullable public android.view.InputEvent getInputEvent();
673    method @NonNull public java.util.List<android.net.Uri> getRegistrationUris();
674    method public void writeToParcel(@NonNull android.os.Parcel, int);
675    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.measurement.SourceRegistrationRequest> CREATOR;
676  }
677
678  public static final class SourceRegistrationRequest.Builder {
679    ctor public SourceRegistrationRequest.Builder(@NonNull java.util.List<android.net.Uri>);
680    method @NonNull public android.adservices.measurement.SourceRegistrationRequest build();
681    method @NonNull public android.adservices.measurement.SourceRegistrationRequest.Builder setInputEvent(@Nullable android.view.InputEvent);
682  }
683
684  public final class WebSourceParams implements android.os.Parcelable {
685    method public int describeContents();
686    method @NonNull public android.net.Uri getRegistrationUri();
687    method public boolean isDebugKeyAllowed();
688    method public void writeToParcel(@NonNull android.os.Parcel, int);
689    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.measurement.WebSourceParams> CREATOR;
690  }
691
692  public static final class WebSourceParams.Builder {
693    ctor public WebSourceParams.Builder(@NonNull android.net.Uri);
694    method @NonNull public android.adservices.measurement.WebSourceParams build();
695    method @NonNull public android.adservices.measurement.WebSourceParams.Builder setDebugKeyAllowed(boolean);
696  }
697
698  public final class WebSourceRegistrationRequest implements android.os.Parcelable {
699    method public int describeContents();
700    method @Nullable public android.net.Uri getAppDestination();
701    method @Nullable public android.view.InputEvent getInputEvent();
702    method @NonNull public java.util.List<android.adservices.measurement.WebSourceParams> getSourceParams();
703    method @NonNull public android.net.Uri getTopOriginUri();
704    method @Nullable public android.net.Uri getVerifiedDestination();
705    method @Nullable public android.net.Uri getWebDestination();
706    method public void writeToParcel(@NonNull android.os.Parcel, int);
707    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.measurement.WebSourceRegistrationRequest> CREATOR;
708  }
709
710  public static final class WebSourceRegistrationRequest.Builder {
711    ctor public WebSourceRegistrationRequest.Builder(@NonNull java.util.List<android.adservices.measurement.WebSourceParams>, @NonNull android.net.Uri);
712    method @NonNull public android.adservices.measurement.WebSourceRegistrationRequest build();
713    method @NonNull public android.adservices.measurement.WebSourceRegistrationRequest.Builder setAppDestination(@Nullable android.net.Uri);
714    method @NonNull public android.adservices.measurement.WebSourceRegistrationRequest.Builder setInputEvent(@Nullable android.view.InputEvent);
715    method @NonNull public android.adservices.measurement.WebSourceRegistrationRequest.Builder setVerifiedDestination(@Nullable android.net.Uri);
716    method @NonNull public android.adservices.measurement.WebSourceRegistrationRequest.Builder setWebDestination(@Nullable android.net.Uri);
717  }
718
719  public final class WebTriggerParams implements android.os.Parcelable {
720    method public int describeContents();
721    method @NonNull public android.net.Uri getRegistrationUri();
722    method public boolean isDebugKeyAllowed();
723    method public void writeToParcel(@NonNull android.os.Parcel, int);
724    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.measurement.WebTriggerParams> CREATOR;
725  }
726
727  public static final class WebTriggerParams.Builder {
728    ctor public WebTriggerParams.Builder(@NonNull android.net.Uri);
729    method @NonNull public android.adservices.measurement.WebTriggerParams build();
730    method @NonNull public android.adservices.measurement.WebTriggerParams.Builder setDebugKeyAllowed(boolean);
731  }
732
733  public final class WebTriggerRegistrationRequest implements android.os.Parcelable {
734    method public int describeContents();
735    method @NonNull public android.net.Uri getDestination();
736    method @NonNull public java.util.List<android.adservices.measurement.WebTriggerParams> getTriggerParams();
737    method public void writeToParcel(@NonNull android.os.Parcel, int);
738    field @NonNull public static final android.os.Parcelable.Creator<android.adservices.measurement.WebTriggerRegistrationRequest> CREATOR;
739  }
740
741  public static final class WebTriggerRegistrationRequest.Builder {
742    ctor public WebTriggerRegistrationRequest.Builder(@NonNull java.util.List<android.adservices.measurement.WebTriggerParams>, @NonNull android.net.Uri);
743    method @NonNull public android.adservices.measurement.WebTriggerRegistrationRequest build();
744  }
745
746}
747
748package android.adservices.signals {
749
750  @FlaggedApi("com.android.adservices.flags.protected_signals_enabled") public class ProtectedSignalsManager {
751    method @NonNull public static android.adservices.signals.ProtectedSignalsManager get(@NonNull android.content.Context);
752    method @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_PROTECTED_SIGNALS) public void updateSignals(@NonNull android.adservices.signals.UpdateSignalsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Object,java.lang.Exception>);
753  }
754
755  @FlaggedApi("com.android.adservices.flags.protected_signals_enabled") public final class UpdateSignalsRequest {
756    method @NonNull public android.net.Uri getUpdateUri();
757  }
758
759  public static final class UpdateSignalsRequest.Builder {
760    ctor public UpdateSignalsRequest.Builder(@NonNull android.net.Uri);
761    method @NonNull public android.adservices.signals.UpdateSignalsRequest build();
762    method @NonNull public android.adservices.signals.UpdateSignalsRequest.Builder setUpdateUri(@NonNull android.net.Uri);
763  }
764
765}
766
767package android.adservices.topics {
768
769  @FlaggedApi("com.android.adservices.flags.topics_encryption_enabled") public final class EncryptedTopic {
770    ctor public EncryptedTopic(@NonNull byte[], @NonNull String, @NonNull byte[]);
771    method @NonNull public byte[] getEncapsulatedKey();
772    method @NonNull public byte[] getEncryptedTopic();
773    method @NonNull public String getKeyIdentifier();
774  }
775
776  public final class GetTopicsRequest {
777    method @NonNull public String getAdsSdkName();
778    method public boolean shouldRecordObservation();
779  }
780
781  public static final class GetTopicsRequest.Builder {
782    ctor public GetTopicsRequest.Builder();
783    method @NonNull public android.adservices.topics.GetTopicsRequest build();
784    method @NonNull public android.adservices.topics.GetTopicsRequest.Builder setAdsSdkName(@NonNull String);
785    method @NonNull public android.adservices.topics.GetTopicsRequest.Builder setShouldRecordObservation(boolean);
786  }
787
788  public final class GetTopicsResponse {
789    method @FlaggedApi("com.android.adservices.flags.topics_encryption_enabled") @NonNull public java.util.List<android.adservices.topics.EncryptedTopic> getEncryptedTopics();
790    method @NonNull public java.util.List<android.adservices.topics.Topic> getTopics();
791  }
792
793  public static final class GetTopicsResponse.Builder {
794    ctor @Deprecated public GetTopicsResponse.Builder(@NonNull java.util.List<android.adservices.topics.Topic>);
795    ctor @FlaggedApi("com.android.adservices.flags.topics_encryption_enabled") public GetTopicsResponse.Builder(@NonNull java.util.List<android.adservices.topics.Topic>, @NonNull java.util.List<android.adservices.topics.EncryptedTopic>);
796    method @NonNull public android.adservices.topics.GetTopicsResponse build();
797  }
798
799  public final class Topic {
800    ctor public Topic(long, long, int);
801    method public long getModelVersion();
802    method public long getTaxonomyVersion();
803    method public int getTopicId();
804  }
805
806  public final class TopicsManager {
807    method @NonNull public static android.adservices.topics.TopicsManager get(@NonNull android.content.Context);
808    method @NonNull @RequiresPermission(android.adservices.common.AdServicesPermissions.ACCESS_ADSERVICES_TOPICS) public void getTopics(@NonNull android.adservices.topics.GetTopicsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.adservices.topics.GetTopicsResponse,java.lang.Exception>);
809  }
810
811}
812
813