全部产品
Search
文档中心

移动开发平台mPaaS:配置预置展位

更新时间:Mar 31, 2022

在 iOS 页面上配置预置展位分为数据接入和 UI 接入两部分操作。数据接入回调获取的是展位数据;UI 接入获取的是根据展位数据生成的 UI 对象。

如果您是智能投放组件的新手用户,建议您直接通过该组件的控制台(服务端)动态配置广告展位的 iOS 页面。更多服务端的配置信息,查看 创建展位

说明

预置接入的对象一般为 ViewController 的子类,该对象必须实现 PromotionCenterDelegate 方法。

UI 接入

  1. 添加协议实现。ViewController 对象实现投放的协议 PromotionCenterDelegate

     @interface DemoViewController () <CDPPromotionCenterDelegate>
     @end
  2. 添加投放监听。

    ViewControllerviewDidLoad 中(或之前)调用添加监听接口,当投放数据就绪时,会通过协议方法进行回调。

     NSArray *spaceCodes = @[@"code1", @"code2"];
     [CDPPromotionCenter addObserver:self
                            spaceCodesForView:spaceCodes
                            spaceCodesForData:nil
                                            extInfo:nil
                                     immediately:YES];
  3. 实现 PromotionCenterDelegate 协议中回调 spaceView 对象的方法,将生成的 view 添加到页面上。

     - (void)promotionViewDidFinishLoading:(CDPSpaceView *)spaceView
                                           spaceCode:(NSString *)spaceCode {
         // 将获取的 spaceView 添加到屏幕上
         // 如果传回的 spaceView 为 nil,表示请求删除广告,此时必须删掉广告内容,页面恢复到没有广告内容的状态。
  4. 移除监听。

    在页面退出时,移除监听。在 ViewControllerdealloc 方法中移除监听。

     - (void)dealloc {
         [CDPPromotionCenter removeObserver:self];
     }

数据接入

  1. 添加协议实现。 ViewController 对象实现投放的协议 PromotionCenterDelegate

     @interface DemoViewController () <CDPPromotionCenterDelegate>
     @end
  2. 添加投放监听。

    ViewControllerviewDidLoad 中(或之前)调用添加监听接口,当投放数据就绪时,会通过协议方法进行回调。

     NSArray *spaceCodes = @[@"code1", @"code2"];
     [CDPPromotionCenter addObserver:self
                            spaceCodesForView:nil
                            spaceCodesForData:spaceCodes
                                            extInfo:nil
                                     immediately:YES];
  3. 实现 PromotionCenterDelegate 协议中回调 spaceInfo 对象的方法,根据返回的数据,进行自定义处理。

     - (void)promotionDataDidFinishLoading:(CDPSpaceInfo *)spaceInfo 
                             spaceCode:(NSString *)spaceCode {
         // 根据 spaceInfo 生成需要显示的广告view
       // 可以自定义来生成 view,也可以使用 SDK 提供的 CDPSpaceView 类
       // 将广告 view 添加到屏幕上
    
     }
  4. 移除监听。

    在退出页面时,移除监听。在 ViewControllerdealloc 方法中移除监听。

     - (void)dealloc {
         [CDPPromotionCenter removeObserver:self];
     }