新聞信息流廣告NewsAdsSDK(內(nèi)部)接入文檔(廣點(diǎn)通、百度、頭條穿山甲)

NewsAdsSDK_iOS接入文檔

版本 發(fā)布時(shí)間 版本內(nèi)容 人員
v1.1 2019-12-11 新增穿山甲個(gè)性化模板廣告,自渲染和個(gè)性化模板切換參數(shù)kBU_NativeAd ????
v1.0 2019-12-05 新聞信息流廣告SDK,支持廣點(diǎn)通、穿山甲、百度 ????

SDK地址,阿里云code,切換至iOS分支,無權(quán)限請(qǐng)聯(lián)系管理員。

注意事項(xiàng):

1.廣告類型關(guān)鍵字符識(shí)別:廣點(diǎn)通(GDT)、穿山甲(BU)、百度(Baidu)。

2.廣點(diǎn)通為模板廣告,百度為原生自渲染,穿山甲(頭條)有自渲染和模板兩種。

3.目前,所有廣告均含小圖(左文右小圖)、大圖(上文下大圖)、三圖(上文下三小圖),只有穿山甲有視頻廣告。

4.頭條廣告分為自渲染和個(gè)性化模板兩種,2019.11.28穿山甲聯(lián)盟中已關(guān)閉自渲染申請(qǐng)通道,只能使用個(gè)性化模板。請(qǐng)使用kBU_NativeAd切換廣告,可刪除多余部分代碼。

5.百度廣告產(chǎn)品管理后臺(tái)需要配置好返回廣告條數(shù)>1,效果為佳。

6.Demo中圖片寬高比如不需要自定義,請(qǐng)忽略本條

  • 百度廣告默認(rèn)小圖和三圖圖片寬高比為3:2,大圖和視頻寬高比為16:9,
    可修改宏定義NewsBaiduSmallPic_ScaleNewsBaiduBigPic_Scale
  • 穿山甲自渲染廣告寬高比暫未抽取,請(qǐng)自行去代碼中修改。
  • 穿山甲模板廣告和廣點(diǎn)通模板廣告高度自適應(yīng),可在聯(lián)盟后臺(tái)修改樣式。

7.百度默認(rèn)請(qǐng)求https廣告,若期望請(qǐng)求http的廣告,直接調(diào)用如下接口:

[BaiduMobAdSetting sharedInstance].supportHttps = NO;

集成步驟:

可全局搜索Demo中代碼標(biāo)記 NewsAd_Code,查看嵌入代碼

1.pod集成廣告SDK
     # 廣點(diǎn)通
     pod 'GDTMobSDK'
     # 谷歌廣告(暫不支持)
     # pod 'Google-Mobile-Ads-SDK'
     # 百度
     pod 'BaiduMobAdSDK'
     # 頭條
     pod 'Bytedance-UnionAD'
2.配置info.plist
  • 定位權(quán)限(百度及廣點(diǎn)通廣告需要)
    NSLocationAlwaysAndWhenInUseUsageDescription,
    NSLocationWhenInUseUsageDescription

  • ADMob配置
    key:GADApplicationIdentifier
    value:ADMob應(yīng)用ID,對(duì)應(yīng)值為宏定義中kAdmob_AppKey

3.拖入Demo中文件夾

NewsAdsSDK

4.可引入廣告管理頭文件至pch文件,也可按需局部引入

#import "NewsAds.h"

5.配置所有廣告key
  • 替換NewsAds.h中配置廣告的key值,根據(jù)對(duì)應(yīng)的注釋正確填寫。
  • 應(yīng)用的BundleIdentifier對(duì)應(yīng),廣告SDK才能拉取數(shù)據(jù)成功。
6.初始化廣告池
  • AppDelegate.m中初始化廣告池,可在didFinishLaunchingWithOptions方法中調(diào)用
[self registerNewsAdsPool];
  • 根據(jù)需要修改registerNewsAdsPool方法中使用的key值,可以直接使用NewsAds.h中宏定義key,也可使用后臺(tái)接口配置的key,如下:
// 百度小圖
 NewsAdModuleBaidu *smallBaidu = [[NewsAdModuleBaidu alloc] initWithAppId:kBaidu_AppKey adId:[AllBaseDataManager shareManager].baiduSmallPic];
7.升級(jí)新聞接口
  • 新聞列表接口中要增加廣告版本參數(shù)&adversion=1.1,否則無法通過廣告管理后臺(tái)控制廣告在新聞列表中顯示的位置。
8.配置新聞列表數(shù)據(jù)模型

目前,已通過NSObject+NewsModel.h分類動(dòng)態(tài)為新聞列表數(shù)據(jù)模型添加adIndexPositionType屬性。具體說明如下:

  • adIndex:記錄廣告所屬位置。
  • PositionType:有些新聞數(shù)據(jù)中新增屬性,用于區(qū)分廣告所屬位置(啟動(dòng)頁(yè)、列表頁(yè)、推薦頁(yè)、熱詞、詳情頁(yè)),如果接口中有此屬性,需要注意區(qū)分。
  • 注意cellType屬性的使用,為自定義屬性,用于記錄當(dāng)前模型要顯示的UI類型,請(qǐng)求到接口數(shù)據(jù)后要對(duì)此屬性賦值,具體實(shí)現(xiàn)查看demo中getNewsDetailInfo的實(shí)現(xiàn),枚舉值如下:
    typedef NS_ENUM(NSInteger, InfoNewsCellType){
        InfoNewsZeroImgCellTypeDef, //無圖(默認(rèn))
        InfoNewsOneImgCellType,     //一張圖
        InfoNewsThreeImgCellType,   //三張圖
        InfoNewsVideoCellType,      //video
        InfoNewsADCellType          //廣告
    };
9.配置新聞列表Tableview
  • 自定義Tableview增加屬性adList,用于廣告存儲(chǔ) 。
   @property (nonatomic, strong) NSMutableDictionary *adList;
  • 懶加載初始化:
-(NSMutableDictionary *)adList{
    if (!_adList) {
        _adList = [NSMutableDictionary dictionary];
    }
    return _adList;
}
10.管理新聞數(shù)據(jù)中廣告
  • 自定義Tableview中實(shí)現(xiàn)bindADToModels方法,并注意參考demo中調(diào)用時(shí)機(jī)。遍歷當(dāng)前請(qǐng)求中所有新聞數(shù)據(jù),IsAD為1,并滿足PositionType不存在,或存在并且為列表頁(yè)類型ZJAdvertisementTypeList時(shí)從廣告池中提取廣告。
11.接管UITableView代理
  • 查看UITableView+NewsAd.h中方法,并參照demo在對(duì)應(yīng)的方法中實(shí)現(xiàn)注冊(cè)廣告cell,計(jì)算cell高,展示cell度,處理cell中廣告曝光事件等。
12.點(diǎn)擊模板廣告叉功能實(shí)現(xiàn)
  • 接收點(diǎn)擊模板廣告叉通知kNewsAdDislikeNotification,實(shí)現(xiàn)刪除數(shù)據(jù)源中對(duì)應(yīng)數(shù)據(jù),并更新列表。參考demo實(shí)現(xiàn)。

常見問題:

1.點(diǎn)擊廣告后如不能展示?
  • 需要修改傳入廣告SDK的控制器,具體方法參考willReturnAD實(shí)現(xiàn)
2.頭條信息流個(gè)性化模板點(diǎn)擊叉后無效?
  • 如不能顯示頭條SDK自帶原因列表彈窗,則傳入的控制器不正確,需要在willReturnAD中選擇合適控制器。
  • 點(diǎn)擊后顯示彈窗,但點(diǎn)擊彈窗選項(xiàng)后無反應(yīng),需要接受通知kNewsAdDislikeNotification,并參照demo中處理方式移除數(shù)據(jù)源并更新列表。

技術(shù)交流請(qǐng)聯(lián)系QQ:781117967

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容