CentrixlinkGlobal 1.0.0

CentrixlinkGlobal 1.0.0

jiawei.xu 维护。



  • CentrixlinkGlobal 和 jiawei.xu 提供

CentrixlinkGlobal iOS SDK 文档

1. 集成SDK的前期准备

1.1

申请AppKey,AppID Centrixlink开发者官网

1.2

创建不同广告类型的PlacementID Centrixlink开发者官网

1.3

iOS8+
Xcode8+

2. 集成SDK

2.1 通过Cocoapods安装集成

pod 'CentrixlinkGlobal', '1.0.0'

2.2 通过下载framework手动集成

2.2.1

在 Github Release 中下载最新版本 CentrixlinkGlobal.framework,将其添加到工程中。

2.2.2

在应用 Target 的 General 下的 Embeded Binaries 中添加 CentrixlinkGlobal.framework

2.2.3

Linked Frameworks and Libraries中添加以下依赖: * UIKit.framework * AVFoundation.framework * Foundation.framework * CoreMedia.framework * CoreLocation.framework * CoreTelephony.framework * SystemConfiguration.framework
* Storekit.framework * MediaPlayer.framework * CFNetwork.framework * AdSupport.framework * ImageIO.framework * libz.dylib * libsqlite3.dylib * libstdc++.dylib

2.2.4

在应用Target中的Build Settings,在Other Linker Flags中添加-ObjC -all_load

2.3 添加资源依赖bundle

Github Release下载CLGlobalAdBundle.bundle文件,并添加到工程中. 确保在Build Phases中的Copy Bundle Resources中存在CLGlobalAdBundle.bundle


3. 集成广告

3.1 应用启动,注册AppID, AppKey

AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中添加

[CLCentrixlinkGlobalADSDK startWithAppID:@"APPID" 
        appSecretKey:@"APPKEY" error:nil];

Centrixlink开发者官网注册一个应用后,将注册生成的APPID,和APPKEY作为启动广告的参数,传入以成功启动广告SDK.

3.2 SDK提供的广告类型以及集成方法

3.2.1 BannerAd

3.2.1.1 创建BannerAd
CLGlobalBannerAd *bannerAd = [[CLGlobalBannerAd alloc] initWithPlacementID:@""];
bannerAd.delegate = self;
[bannerAd loadAd];

确保在bannerAd创建后先设置delegate,再调用[bannerAd loadAd]. 实现CLGlobalBannerAdDelegate的方法.

3.2.1.2 BannerAd的代理方法
- (void)bannerAdLoadFinished:(CLGlobalBannerAd *)bannerAd
                       error:(NSError *)error;

bannerAd加载结束后,如果errornil,则加载成功。开发者可以使用- (void)renderBannerAdViewInContainer:(UIView *)adContainer;bannerAd渲染到开发者提供的容器视图上。如果error不为nil,则加载失败。

- (void)bannerAdDisplay:(CLGlobalBannerAd *)bannerAd
                  error:(NSError *)error;

bannerAd显示完成后,如果errornil,则显示成功。如果error不为nil,则显示失败。

- (void)bannerAdImpressionFinished:(CLGlobalBannerAd *)bannerAd
                             error:(NSError *)error;

bannerAd根据SDK产品逻辑曝光回调。如果errornil,则曝光成功。如果error不为nil,则曝光失败。

- (void)bannerAdDidClick:(CLGlobalBannerAd *)bannerAd 
                   error:(NSError *)error;

点击bannerView后跳转至landingpage的回调。如果errornil,则跳转成功。如果error不为nil,则跳转失败。

- (void)bannerAdApplicationDidBecomeActive:(CLGlobalBannerAd *)bannerAd 
                                     error:(NSError *)error

点击bannerView后跳出当前应用的回调

- (void)bannerAdApplicationWillResignActive:(CLGlobalBannerAd *)bannerAd 
                                      error:(NSError *)error

点击bannerView后再回到当前应用的回调

- (void)bannerAdWillShowPreview:(CLGlobalBannerAd *)bannerAd 
                          error:(NSError *)error

点击bannerView弹出应用内SKStoreProductViewController回调

- (void)bannerAdDidDismissPreview:(CLGlobalBannerAd *)bannerAd 
                            error:(NSError *)error

SKStoreProductViewController显示消失的回调

3.2.2 NativeAd

NativeAd共有四种高度的模板,分别为100、120、330、400。如果开发者提供的渲染NativeAd的容器尺寸不符合这四种模板的最小尺寸,则会有渲染错误,并给开发者提供回调。

样式

类型 图示
NativeAd100 NativeAd100
NativeAd120 NativeAd120
NativeAd330 NativeAd330
NativeAd400 NativeAd400
3.2.2.1 创建NativeAd
CLGlobalNativeAd *nativeAd = [[CLGlobalNativeAd alloc]  
            initWithPlacementID:@"" displayWidth:320];
nativeAd.delegate = self;
[nativeAd loadAd];

根据CLGlobalNativeAd的初始化方法创建一个nativeAd

3.2.2.2 NativeAd的代理方法
- (void)nativeAdLoadFinished:(CLGlobalNativeAd *)nativeAd
                       error:(NSError *)loadError;

nativeAd加载结束后,如果errornil,则加载成功。开发者可以通过- (void)renderNativeAdViewInContainer:(UIView *)adSuperView;nativeAd渲染到开发者的容器视图中。如果error不为nil,则加载失败。

- (void)nativeAdImpressionFinished:(CLGlobalNativeAd *)nativeAd
                             error:(NSError *)error;

nativeAd根据SDK产品逻辑曝光回调。如果errornil,则曝光成功。如果error不为nil,则曝光失败。

- (void)nativeAdDidClickCTA:(CLGlobalNativeAd *)nativeAd
                      error:(NSError *)error;

点击nativeAdView后跳转至landingpage的回调。如果errornil,则跳转成功。如果error不为nil,则跳转失败。

- (void)nativeAdApplicationDidBecomeActive:(CLGlobalNativeAd *)nativeAd 
                                     error:(NSError *)error

点击nativeAdView后跳出当前应用的回调

- (void)nativeAdApplicationWillResignActive:(CLGlobalNativeAd *)nativeAd 
                                      error:(NSError *)error

点击nativeAdView后再回到当前应用的回调

- (void)nativeAdWillShowPreview:(CLGlobalNativeAd *)nativeAd 
                          error:(NSError *)error

点击nativeAdView弹出应用内SKStoreProductViewController回调

- (void)nativeAdDidDismissPreview:(CLGlobalNativeAd *)nativeAd 
                            error:(NSError *)error

SKStoreProductViewController显示消失的回调

3.2.3 InterstitialAd

3.2.3.1 创建InterstitialAd
CLGlobalInterstitialAd *interstitialAd = [[CLGlobalInterstitialAd alloc] initWithPlacementID:@""];
interstitialAd.delegate = self;
[interstitialAd loadAd];

根据CLGlobalInterstitialAd的初始化方法创建一个nativeAd

3.2.3.2 InterstitialAd的代理方法
- (void)interstitialAdDidLoad:(CLGlobalInterstitialAd *)interstitialAd 
                        error:(NSError *)loadError;

interstitialAd加载完成。如果errornil,则加载成功,开发者可以调用- (void)showAdIn:(UIViewController *)viewController options:(NSDictionary *)options来显示此次加载成功的interstitialAd。如果error不为nil,则加载失败。

- (void)interstitialAdDisplayFinished:(CLGlobalInterstitialAd *)interstitialAd
                                error:(NSError *)error;

如果errornil,展示成功。开发者通过调用- (void)showAdIn:(UIViewController *)viewController options:(NSDictionary *)options来显示interstitialAd的弹出窗口。如果error不为nil,展示失败。

- (void)interstitialAdImpressionFinished:(CLGlobalInterstitialAd *)interstitialAd
                                   error:(NSError *)error;

interstitialAd曝光的回调。如果errornil,曝光成功。如果error不为nil,曝光失败。

- (void)interstitialAdDidClick:(CLGlobalInterstitialAd *)interstitialAd 
                         error:(NSError *)previewError;

点击interstitialAd广告的回调。如果errornil,点击跳转landingPage成功。如果error不为nil,点击跳转landingPage失败。

- (void)interstitialAdDidClickClose:(CLGlobalInterstitialAd *)interstitialAd;

点击interstitialAd关闭按钮的回调,以及自动关闭interstitialAd的回调

- (void)interstitialAdApplicationDidBecomeActive:(CLGlobalInterstitialAd *)interstitialAd 
                                           error:(NSError *)error

点击interstitialAd后跳出当前应用的回调

- (void)interstitialAdApplicationWillResignActive:(CLGlobalInterstitialAd *)interstitialAd 
                                            error:(NSError *)error

点击nativeAdView后再回到当前应用的回调


4. Error信息

ErrorDomain 为com.centrlixlink.sdk.ios.global.error

errorCode info
1000, 1001, 1002 SDK启动错误
1500 不合规URL
1550 不合规JSON
1600,1601 文件操作错误
1650 http返回状态码错误
1700 langding page无法打开
1750 操作取消
1800 图片下载错误
1900 placementID错误
3000, 3001, 3002, 3003, 3004 nativeAd数据返回错误
3100 开发者提供渲染nativeAd视图的容器尺寸不合规,不同类型nativeAd所需容器最小宽度不同。
4000, 4001, 4002, 4003, 4004, 4005 bannerAd数据返回错误
4100 开发者提供渲染bannerAd视图的容器尺寸不合规,bannerAd所需渲染容器宽高需要大于等于广告位尺寸
5000, 5001, 5002, 5003, 5004 interstitialAd数据返回错误

5. 联系我们

邮箱: Jiawei