lpw
2024-09-25 f76fcb126b14e9c98fc80fbb9dd10a7f79875f03
commit | author | age
96fe76 1 //
L 2 //  GADRequestConfiguration.h
3 //  Google Mobile Ads SDK
4 //
5 //  Copyright 2018 Google LLC. All rights reserved.
6 //
7
8 #import <Foundation/Foundation.h>
9 #import <GoogleMobileAds/GoogleMobileAdsDefines.h>
10
11 /// Maximum ad content rating.
12 typedef NSString *GADMaxAdContentRating NS_TYPED_ENUM;
13
14 /// Rating for content suitable for general audiences, including families.
15 FOUNDATION_EXPORT GADMaxAdContentRating _Nonnull const GADMaxAdContentRatingGeneral;
16 /// Rating for content suitable for most audiences with parental guidance.
17 FOUNDATION_EXPORT GADMaxAdContentRating _Nonnull const GADMaxAdContentRatingParentalGuidance;
18 /// Rating for content suitable for teen and older audiences.
19 FOUNDATION_EXPORT GADMaxAdContentRating _Nonnull const GADMaxAdContentRatingTeen;
20 /// Rating for content suitable only for mature audiences.
21 FOUNDATION_EXPORT GADMaxAdContentRating _Nonnull const GADMaxAdContentRatingMatureAudience;
22
23 /// Add this constant to the testDevices property's array to receive test ads on the simulator.
24 FOUNDATION_EXPORT NSString *_Nonnull const GADSimulatorID GAD_DEPRECATED_MSG_ATTRIBUTE(
25     "Deprecated. Simulators are already in test mode by default.");
26
27 /// Publisher privacy treatment personalization states.
28 typedef NS_ENUM(NSInteger, GADPublisherPrivacyPersonalizationState) {
29   /// Indicates that ad requests should receive the default publisher privacy treatment.
30   GADPublisherPrivacyPersonalizationStateDefault = 0,
31   /// Indicates that ad requests should receive personalized publisher privacy treatment.
32   GADPublisherPrivacyPersonalizationStateEnabled = 1,
33   /// Indicates that ad requests should receive non-personalized publisher privacy treatment.
34   GADPublisherPrivacyPersonalizationStateDisabled = 2,
35 };
36
37 /// Request configuration. The settings in this class will apply to all ad requests.
38 @interface GADRequestConfiguration : NSObject
39
40 /// The maximum ad content rating. All Google ads will have this content rating or lower.
41 @property(nonatomic, copy, nullable) GADMaxAdContentRating maxAdContentRating;
42
43 /// Identifiers corresponding to test devices which will always request test ads.
44 /// The test device identifier for the current device is logged to the console when the first
45 /// ad request is made.
46 @property(nonatomic, copy, nullable) NSArray<NSString *> *testDeviceIdentifiers;
47
48 /// [Optional] This property indicates whether the user is under the age of consent.
49 /// https://developers.google.com/admob/ios/targeting#users_under_the_age_of_consent.
50 ///
51 /// If you set this property with @YES, a TFUA parameter will be included in all ad requests, and
52 /// you are indicating that you want ad requests to be handled in a manner suitable for users under
53 /// the age of consent. This parameter disables personalized advertising, including remarketing, for
54 /// all ad requests. It also disables requests to third-party ad vendors, such as ad measurement
55 /// pixels and third-party ad servers.
56 ///
57 /// If you set this property with @NO, you are indicating that you don't want ad requests to be
58 /// handled in a manner suitable for users under the age of consent.
59 ///
60 /// If you leave or reset this property as nil or unknown, ad requests will include no indication
61 /// of how you would like your ad requests to be handled in a manner suitable for users under the
62 /// age of consent.
63 @property(nonatomic, nullable, copy) NSNumber *tagForUnderAgeOfConsent;
64
65 /// [Optional] This property indicates whether you would like your app to be treated as
66 /// child-directed for purposes of the Children’s Online Privacy Protection Act (COPPA),
67 /// https://www.ftc.gov/business-guidance/privacy-security/childrens-privacy.
68 ///
69 /// If you set this property with @YES, you are indicating that your app should be treated as
70 /// child-directed for purposes of the Children’s Online Privacy Protection Act (COPPA).
71 ///
72 /// If you set this property with @NO, you are indicating that your app should not be treated as
73 /// child-directed for purposes of the Children’s Online Privacy Protection Act (COPPA).
74 ///
75 /// If you leave or reset this property as nil or unknown, ad requests will include no indication of
76 /// how you would like your app treated with respect to COPPA.
77 ///
78 /// By setting this property, you certify that this notification is accurate and you are authorized
79 /// to act on behalf of the owner of the app. You understand that abuse of this setting may result
80 /// in termination of your Google account.
81 @property(nonatomic, nullable, copy) NSNumber *tagForChildDirectedTreatment;
82
83 /// Controls whether the Google Mobile Ads SDK publisher first-party ID, formerly known as the same
84 /// app key, is enabled. The value set persists across app sessions. The key is enabled by default.
85 - (void)setPublisherFirstPartyIDEnabled:(BOOL)enabled;
86
87 #pragma mark - Publisher Privacy Treatment
88
89 /// This property lets you specify the personalization treatment that applies to subsequent ad
90 /// requests.
91 @property(nonatomic) GADPublisherPrivacyPersonalizationState publisherPrivacyPersonalizationState;
92
93 @end