HDwallpaper/HD wallpaper/FW/AppLovinSDK.xcframework/ios-arm64/AppLovinSDK.framework/Headers/ALTargetingData.h
2024-07-03 17:31:03 +08:00

143 lines
4.8 KiB
Objective-C

//
// ALTargetingData.h
// sdk
//
// Created by Basil on 9/18/12.
// Copyright © 2022 AppLovin Corporation. All rights reserved.
//
@class ALTargetingDataBuilder;
NS_ASSUME_NONNULL_BEGIN
/**
* Builder block used to create an ALSdkInitializationConfiguration object.
*/
typedef void (^ALTargetingDataBuilderBlock) (ALTargetingDataBuilder *builder);
/**
* This enumeration represents content ratings for the ads shown to users.
* They correspond to IQG Media Ratings.
*/
typedef NS_ENUM(NSInteger, ALAdContentRating)
{
ALAdContentRatingNone,
ALAdContentRatingAllAudiences,
ALAdContentRatingEveryoneOverTwelve,
ALAdContentRatingMatureAudiences
};
/**
* This enumeration represents gender.
*/
typedef NS_ENUM(NSInteger, ALGender)
{
ALGenderUnknown,
ALGenderFemale,
ALGenderMale,
ALGenderOther
};
/**
* This class allows you to provide user or app data that will improve how we target ads.
*/
@interface ALTargetingData : NSObject
@property (nonatomic, assign) ALGender gender __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, assign) ALAdContentRating maximumAdContentRating __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, strong, nullable) NSNumber *yearOfBirth __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, copy, nullable) NSString *email __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, copy, nullable) NSString *phoneNumber __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, copy, nullable) NSArray<NSString *> *keywords __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
@property (nonatomic, copy, nullable) NSArray<NSString *> *interests __deprecated_msg("This setter is deprecated and will be removed in a future SDK version. Please build a ALTargetingData instance in ALSdkInitializationConfiguration");
- (void)clearAll __deprecated_msg("This method is deprecated and will be removed in a future SDK version.");
#pragma mark - Initialization
/**
* Creates a @c ALTargetingData object from the builder in the builderBlock.
*
* @return a @c ALTargetingData object.
*/
+ (instancetype)dataWithBuilderBlock:(NS_NOESCAPE ALTargetingDataBuilderBlock)builderBlock;
/**
* Creates a builder object for @c ALTargetingData.
* Please call @c -build to create a @c ALTargetingData object.
*
* @return a @c ALTargetingDataBuilder object.
*/
+ (ALTargetingDataBuilder *)builder;
- (instancetype)init __attribute__((unavailable("Please create a ALTargetingData instance in ALSdkInitializationConfiguration")));
- (instancetype)new NS_UNAVAILABLE;
@end
#pragma mark - ALTargetingData Builder
/**
* Builder class used to create an ALTargetingData object.
*/
@interface ALTargetingDataBuilder : NSObject
/**
* The year of birth of the user.
* Set this property to @c nil to clear this value.
*/
@property (nonatomic, strong, nullable) NSNumber *yearOfBirth;
/**
* The gender of the user.
* Set this property to @c ALGenderUnknown to clear this value.
*/
@property (nonatomic, assign) ALGender gender;
/**
* The maximum ad content rating shown to the user.
* Set this property to @c ALAdContentRatingNone to clear this value.
*/
@property (nonatomic, assign) ALAdContentRating maximumAdContentRating;
/**
* The email of the user.
* Set this property to @c nil to clear this value.
*/
@property (nonatomic, copy, nullable) NSString *email;
/**
* The phone number of the user. Do not include the country calling code.
* Set this property to @c nil to clear this value.
*/
@property (nonatomic, copy, nullable) NSString *phoneNumber;
/**
* The keywords describing the application.
* Set this property to @c nil to clear this value.
*/
@property (nonatomic, copy, nullable) NSArray<NSString *> *keywords;
/**
* The interests of the user.
* Set this property to @c nil to clear this value.
*/
@property (nonatomic, copy, nullable) NSArray<NSString *> *interests;
#pragma mark - Build
/**
* Builds a @c ALTargetingData object from the builder properties' values.
*
* @return a @c ALTargetingData object.
*/
- (ALTargetingData *)build;
- (instancetype)init NS_UNAVAILABLE;
+ (instancetype)new NS_UNAVAILABLE;
@end
NS_ASSUME_NONNULL_END