💡Tips:
- 自定义原生广告Adapter需继承 com.anythink.nativead.unitgroup.api.CustomNativeAdapter,并重写所有抽象方法,在相应的方法中调用广告平台的API,并通过类成员变量
mLoadListener
回调加载的结果,通过类成员变量mImpressionListener
回调广告展示、点击、关闭等事件结果
💡Tips:
- 自定义原生广告Adapter需继承 com.thinkup.nativead.unitgroup.api.CustomNativeAdapter,并重写所有抽象方法,在相应的方法中调用广告平台的API,并通过类成员变量
mLoadListener
回调加载的结果,通过类成员变量mImpressionListener
回调广告展示、点击、关闭等事件结果
只需要继承CustomNativeAdapter和实现公共的抽象方法即可,其中广告加载成功之后,需要将自定义广告平台的广告信息包装在继承CustomNativeAd对象里,通过ATCustomLoadListener.onAdCacheLoaded
方法回调出去,广告的内容需要重写CustomNativeAd的方法来提供:(里面的方法实现可按照自定义广告平台来需求来实现,可以不用全部实现)
方法 | 说明 |
---|---|
void loadCustomNetworkAd(Context context, Map serverExtra, Map localExtra) | 实现自定义广告平台的广告的加载逻辑 context:对应传入ATNative的context值 serverExtra:服务端配置的自定义参数,TopOn后台配置的Json字符串中的key-value都可通过serverExtra参数获取到 localExtra:本次加载传入自定义参数,通过ATNative#setLocalExtra() 方法传入的key-value可通过locaExtra参数获取到 |
boolean isNativeExpress() | 用于判断当前的原生广告是否是模版广告 |
ViewGroup getCustomAdContainer() | 提供自定义广告平台固有装载原生广告的容器 |
View getAdMediaView() | 用于提供原生广告的大图或者视频的View(如果是模版广告需要将模版广告的View通过该方法提供) |
String getTitle() | 用于提供原生广告标题 |
String getDescriptionText() | 用于提供原生广告描述 |
String getMainImageUrl() | 用于提供原生广告大图url |
String getIconImageUrl() | 用于提供原生广告图标url |
String getCallToActionText() | 用于提供原生广告CTA按钮文案 |
Double getStarRating() | 用于提供原生广告的星级评分 |
String getAdChoiceIconUrl() | 用于提供原生广告的广告标识的url |
String getAdFrom() | 用于提供原生广告的广告来源文案 |
List |
用于提供原生广告的图片列表 |
void prepare(View view, ATNativePrepareInfo nativePrepareInfo) | 用于配置广告点击事件、绑定自渲染元素等 view:展示原生广告的容器 nativePrepareInfo:用于自渲染广告绑定自渲染元素和绑定点击事件 |
void clear(View view) | 实现移除广告点击事件的绑定 view: 展示原生广告的容器 |
void onResume() | 原生广告被展示时执行 |
void onPause() | 原生广告没有展示时执行 |
void destory() | 原生广告销毁时执行 |
只需要继承CustomNativeAdapter和实现公共的抽象方法即可,其中广告加载成功之后,需要将自定义广告平台的广告信息包装在继承CustomNativeAd对象里,通过TUCustomLoadListener.onAdCacheLoaded
方法回调出去,广告的内容需要重写CustomNativeAd的方法来提供:(里面的方法实现可按照自定义广告平台来需求来实现,可以不用全部实现)
方法 | 说明 |
---|---|
void loadCustomNetworkAd(Context context, Map serverExtra, Map localExtra) | 实现自定义广告平台的广告的加载逻辑 context:对应传入TUNative的context值 serverExtra:服务端配置的自定义参数,TopOn后台配置的Json字符串中的key-value都可通过serverExtra参数获取到 **localExtra:本次加载传入自定义参数,通过TUNative#setLocalExtra() 方法传入的key-value可通过locaExtra参数获取到 |
boolean isNativeExpress() | 用于判断当前的原生广告是否是模版广告 |
ViewGroup getCustomAdContainer() | 提供自定义广告平台固有装载原生广告的容器 |
View getAdMediaView() | 用于提供原生广告的大图或者视频的View(如果是模版广告需要将模版广告的View通过该方法提供) |
String getTitle() | 用于提供原生广告标题 |
String getDescriptionText() | 用于提供原生广告描述 |
String getMainImageUrl() | 用于提供原生广告大图url |
String getIconImageUrl() | 用于提供原生广告图标url |
String getCallToActionText() | 用于提供原生广告CTA按钮文案 |
Double getStarRating() | 用于提供原生广告的星级评分 |
String getAdChoiceIconUrl() | 用于提供原生广告的广告标识的url |
String getAdFrom() | 用于提供原生广告的广告来源文案 |
List |
用于提供原生广告的图片列表 |
void prepare(View view, TUNativePrepareInfo nativePrepareInfo) | 用于配置广告点击事件、绑定自渲染元素等 view:展示原生广告的容器 nativePrepareInfo:用于自渲染广告绑定自渲染元素和绑定点击事件 |
void clear(View view) | 实现移除广告点击事件的绑定 view: 展示原生广告的容器 |
void onResume() | 原生广告被展示时执行 |
void onPause() | 原生广告没有展示时执行 |
void destory() | 原生广告销毁时执行 |
自定义的广告平台信息包装在继承CustomNativeAd之后,可通过CustomNativeAd里面的方法执行广告事件的回调:
方法 | 说明 |
---|---|
void notifyAdClicked() | 广告点击时执行回调 |
void notifyAdDislikeClick() | 广告点击Dislike按钮时执行回调(可选) |
void notifyAdVideoStart() | 广告的视频播放时执行回调(可选) |
void notifyAdVideoEnd() | 广告的视频结束时执行回调(可选) |
代码详情请参考Demo中的示例Adapter