SDK初始化说明
<h1>SDK初始化说明<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/iOS/%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E/#sdk%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E"></a></h1>
<h2>1. SDK初始化<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/iOS/%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E/#_1-sdk%E5%88%9D%E5%A7%8B%E5%8C%96"></a></h2>
<p>WindMillAds 类是整个 SDK 设置的入口和接口,可以设置 SDK 的一些全局信息,提供类方法获取设置结果。</p>
<p>初始化代码需尽早执行,最好写在APP启动回调里:</p>
<p>objective-c</p>
<pre><code>- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// SDK初始化接口
[WindMillAds setupSDKWithAppId:@&quot;6877&quot;];
}</code></pre>
<h2>2. 提前初始化广告平台SDK(v2.11.0及以后版本)<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/iOS/%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E/#_2-%E6%8F%90%E5%89%8D%E5%88%9D%E5%A7%8B%E5%8C%96%E5%B9%BF%E5%91%8A%E5%B9%B3%E5%8F%B0sdk-v2-11-0%E5%8F%8A%E4%BB%A5%E5%90%8E%E7%89%88%E6%9C%AC"></a></h2>
<p>如果需要在初始化SDK的同时,将指定的广告平台SDK进行初始化,则可以调用 <strong>setupSDKWithAppId:appId sdkConfigures:</strong> 方法,sdkConfigures传入自己希望提前初始化的广告平台平台的Configure数组。</p>
<p>参考代码如下:</p>
<p>objective-c</p>
<pre><code>AWMSDKConfigure *sigmobConfigure = [[AWMSDKConfigure alloc] initWithAdnId:WindMillAdnSigmob appid:@&quot;your id&quot; appKey:@&quot;your key&quot;];
AWMSDKConfigure *csjConfigure = [[AWMSDKConfigure alloc] initWithAdnId:WindMillAdnCSJ appid:@&quot;your id&quot; appKey:@&quot;your key&quot;];
[WindMillAds setupSDKWithAppId:@&quot;6877&quot; sdkConfigures:@[sigmobConfigure, csjConfigure]];</code></pre>
<h2>3. 版本查看<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/iOS/%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E/#_3-%E7%89%88%E6%9C%AC%E6%9F%A5%E7%9C%8B"></a></h2>
<p>objective-c</p>
<pre><code>[WindMillAds sdkVersion];</code></pre>
<h2>4. 接口说明<a href="https://doc.sigmob.com/ToBid%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/SDK%E9%9B%86%E6%88%90%E8%AF%B4%E6%98%8E/iOS/%E5%88%9D%E5%A7%8B%E5%8C%96%E8%AF%B4%E6%98%8E/#_4-%E6%8E%A5%E5%8F%A3%E8%AF%B4%E6%98%8E"></a></h2>
<p>objective-c</p>
<pre><code>@interface WindMillAds : NSObject
/// SDKVersion
+ (NSString *)sdkVersion;
// 获取平台唯一ID,需要在一次广告请求后调研,否则返回为nil
+ (NSString *)getUid;
// Initialize WindMill Ads SDK
+ (void)setupSDKWithAppId:(NSString *)appId;
// Initialize WindMill Ads SDK
// configure: The configuration information is initialized in advance
+ (void)setupSDKWithAppId:(NSString *)appId
sdkConfigures:(NSArray&lt;AWMSDKConfigure *&gt; *)configures;
// 扩展字段
// 设置时机:初始化时
// 目前支持美数渠道 支持唤起微信小程序的能力 的传值 key用WindMillWXAppId,value用WindMillWXUniversalLink
+ (void)setExt:(NSDictionary&lt;NSString *, NSString *&gt; *)ext;
/// 场景曝光,sceneId由平台生成
+ (void)sceneExposeWithSceneId:(NSString *)sceneId sceneName:(NSString *)sceneName;
/// 设置流量分组自定义规则【应用级设置】
+ (void)initCustomGroup:(NSDictionary&lt;NSString *, NSString *&gt; *)group;
/// 设置流量分组自定义规则【聚合广告位级设置】
+ (void)initCustomGroup:(NSDictionary&lt;NSString *, NSString *&gt; *)group forPlacementId:(NSString *)placementId;
/**
* DeBug开关显示
*
* @param enable true 开启debug,false 关闭debug
*/
+ (void)setDebugEnable:(BOOL)enable;
#pragma mark - CCPA SUPPORT
+ (void)setCCPAStatus:(WindMillCCPAStatus)status;
+ (WindMillCCPAStatus)getCCPAStatus;
#pragma mark - GDPR SUPPORT
/************************** GDPR *********************************/
+ (void)setUserGDPRConsentStatus:(WindMillConsentStatus)status;
+ (WindMillConsentStatus)getUserGDPRConsentStatus;
#pragma mark - Age SUPPORT
/************************** Age *********************************/
+ (void)setIsAgeRestrictedUser:(WindMillAgeRestrictedStatus)status;
+ (WindMillAgeRestrictedStatus)getAgeRestrictedStatus;
#pragma mark - Adult SUPPORT
/************************** 设置是否是成年人 *********************************/
/// WindAdult: 成年人, WindChildren: 未成年人 default=WindAdult
+ (void)setAdult:(WindMillAdultState)state;
+ (WindMillAdultState)getAdultState;
#pragma mark - PersonalizedAdvertisin SUPPORT
/// WindPersonalizedAdvertisingOn: 开启个性化推荐, WindPersonalizedAdvertisingOff: 关闭个性化推荐, default=WindPersonalizedAdvertisingOn
+ (void)setPersonalizedAdvertising:(WindMillPersonalizedAdvertisingState)state;
+ (WindMillPersonalizedAdvertisingState)getPersonalizedAdvertisingState;
+ (NSUInteger)getUserAge;
+ (void)setUserAge:(NSUInteger)age;
@end</code></pre>
<p>objective-c</p>
<pre><code>@interface AWMSDKConfigure : NSObject
/// 渠道ID
@property (nonatomic, assign, readonly) NSInteger adnId;
/// 渠道初始化所需的AppId [Required]
@property (nonatomic, strong, readonly) NSString *appId;
/// 渠道初始化所需的AppKey [Optional]
@property (nonatomic, strong, readonly) NSString *appKey;
/// 生成第三方渠道初始化对象
/// - Parameters:
/// - adnId: required 第三方渠道ID
/// - appId: optional 第三方渠道初始化appId
/// - appKey: optional 第三方渠道初始化appKey
- (instancetype)initWithAdnId:(WindMillAdn)adnId
appid:(NSString *)appId
appKey:(NSString *)appKey;
@end</code></pre>