
banner广告是在内容底部或顶部显示的小条形广告, Banner广告的宽高请尽量与adSlot中设置的宽高比例接近,以避免过多非等比例的拉伸。原生横幅广告内容与其他内容区分开,周围应留出空间防止意外点击,不应将横幅广告放置于文本、图片和应用的其他可点击部分,避免误点。
注意事项
使用初始化后的TTAdManager对象,创建广告请求对象TTAdNative。
AdSlot用于请求广告前,传递部分广告配置参数。
方法名 | 说明 |
setCodeId(String codeId) | 聚合广告位ID |
setImageAcceptedSize(int width, int height) | 设置宽高,单位px |
setUserID(String userID) | 用户的唯一标识,非必传,主要用来方便后续问题排查 |
setMediationAdSlot(IMediationAdSlot mediationAdSlot) | 设置聚合广告请求参数 |
方法名 | 说明 |
boolean isMuted() | 设置静音 |
float getVolume() | 设置音量范围0~1;设置静音时为0 |
boolean isUseSurfaceView() | 是否使用SurfaceView |
Map<String, Object> getExtraObject() | 设置额外参数 |
boolean isBidNotify() | bidding类型广告,竞价成功或者失败后是否通知对应的adn |
String getScenarioId() | 广告场景ID |
boolean isAllowShowCloseBtn() | 是否显示关闭按钮 |
MediationNativeToBannerListener getMediationNativeToBannerListener() | banner/信息流混出时,用于将自渲染信息素材流转成banner,由开发者传入 |
接入方可调用 loadBannerExpressAd(AdSlot adSlot, @NonNull NativeExpressAdListener listener) 异步加载广告。
方法名 | 说明 |
void onNativeExpressAdLoad(List ads) | 广告加载成功的回调,接入方可以在这个回调中进行渲染 |
void onError(int code, String message) | 加载失败的回调 |
为了确保播放流程建议在广告加载成功onNativeExpressAdLoad(List<TTNativeExpressAd> list)回调后调用广告展示并判断isReady状态
方法名 | 说明 |
View getExpressAdView() | 得到原生模板广告view |
void setExpressInteractionListener(ExpressAdInteractionListener expressAdInteractionListener) | 广告交互回调 |
void destroy() | 销毁 |
void setDislikeCallback(Activity activity, TTAdDislike.DislikeInteractionCallback dislikeInteractionCallback) | 设置dislike回调 |
Map<String, Object> getMediaExtraInfo() | 广告额外信息 |
MediationNativeManager getMediationManager() | 获取聚合广告信息 |
TTAdDislike getDislikeDialog(Activity activity) | 得到dislike dialog(聚合场景不支持) |
void showInteractionExpressAd(Activity activity) | 展示插屏广告(聚合场景不支持) |
void setVideoAdListener(ExpressVideoAdListener videoAdListener) | 设置视频广告的回调监听(聚合场景不支持) |
void setCanInterruptVideoPlay(boolean canInterruptVideoPlay) | 个性化模板广告中视频广告是否可以点击暂停、继续播放(聚合场景不支持) |
void setSlideIntervalTime(int intervalTime) | 设置Banner广告轮播的间隔时间(聚合场景不支持该字段,聚合场景仅支持在平台瀑布流属性中进行设置) |
void setDislikeDialog(TTDislikeDialogAbstract ttDislikeDialogAbstract) | 自定义dislike dialog(聚合场景不支持) |
int getImageMode() | 得到原生广告图片模式(聚合场景不支持) |
DislikeInfo getDislikeInfo() | 获取Dislike相关信息(聚合场景不支持) |
void setDownloadListener(TTAppDownloadListener ttAppDownloadListener) | 广告的下载回调(聚合场景不支持) |
int getInteractionType() | 广告的交互类型(聚合场景不支持) |
void render() | 渲染模板广告(聚合场景不支持) |
方法名 | 说明 |
void onAdClicked(View view, int type) | 广告的点击回调,view、type无效 |
void onAdShow(View view, int type) | 广告的展示回调,view、type无效 |
void onRenderFail(View view, String msg, int code) | 模板渲染失败(聚合场景不支持) |
void onRenderSuccess(View view, float width, float height) | 模板渲染成功(聚合场景不支持) |
方法名 | 说明 |
void onShow() | dislike show |
void onSelected(int position, String value, boolean enforce) | 选择 |
void onCancel() | 取消 |
方法名 | 说明 |
boolean isReady() | 当前广告是否可以展示 |
MediationAdEcpmInfo getShowEcpm() | 为了确保数据的准确性,强烈建议在展示后获取展示广告的详细信息,包括广告位类型-getRitType、流量分组ID-getSegmentId、AB实验分组ID-getABTestId、渠道名称-getChannel、子渠道名称-getSubChannel、场景ID-getScenariold、价格-getEcpm、ADN平台-getSdkName |
List<MediationAdLoadInfo> getAdLoadInfo() | load回调后获取广告加载信息 |
boolean hasDislike() | 是否需要Dislike弹窗 |
void setUseCustomVideo(boolean useCustomVideo) | 设置是否是开发者自己进行视频播放,仅支持对外提供视频url的adn,要注意有些adn需要申请白名单 |
void setShakeViewListener(MediationShakeViewListener listener) | 摇一摇监听 |
boolean isExpress() | 是否为模板广告 |
方法名 | 说明 |
Map<String, String> getCustomData() | 自定义参数 |
String getSdkName() | 获取SDK名称 |
String getCustomSdkName() | 获取自定义ADN名称 |
String getSlotId() | 获取代码位ID |
String getLevelTag() | 获取多阶底价标签 |
String getEcpm() | 获取价格 |
int getReqBiddingType() | 获取bidding类型 |
String getErrorMsg() | 获取错误信息 |
String getRequestId() | 获取请求标识 |
String getRitType() | 获取代码位类型 |
String getSegmentId() | 获取流量分组ID |
String getChannel() | 获取渠道 |
String getSubChannel() | 获取子渠道 |
String getAbTestId() | 获取AB测试ID |
String getScenarioId() | 获取场景ID |
已经展示过且不再使用的广告需要在合适的时机调用destroy方法及时对广告进行销毁,避免内存异常场景。
创建广告请求AdSlot时需额外设置setMediationNativeToBannerListener即可,请求、展示广告流程同Banner广告接入流程相同,详见接入Banner广告模块
方法名 | 说明 |
View getMediationBannerViewFromNativeAd(IMediationNativeAdInfo ad) | 将自渲染信息流广告的素材转成广告View,步骤如下:
|
方法名 | 说明 |
String getTitle() | 广告标题 |
String getDescription() | 广告内容描述 |
String getIconUrl() | 广告Icon |
String getImageUrl() | 大图URL |
String getActionText() | 广告按钮文案 |
double getStarRating() | 广告的下载apk对应的星级 |
List getImageList() | 广告图片 |
String getSource() | 广告来源,一般是广告主名称 |
int getAdImageMode() | 广告展示类型,大图,小图,组图,视频 |
int getInteractionType() | 广告交互类型 |
void registerView(Activity activity,ViewGroup container,List clickViews,List creativeViews,List directDownloadViews,MediationViewBinder viewBinder) | 注册事件,计费点 |
MediationNativeAdAppInfo getNativeAdAppInfo() | 获取下载类广告时下载app的相关安全合规六要素 |
boolean hasDislike() | 是否需要dislike 按钮 |
MediationAdDislike getDislikeDialog(Activity activity) | 得到dislike dialog 穿山甲SDK使用 信息流自渲染广告 |
MediationAdDislike getDislikeDialog(Activity activity, Map<String, Object> extra) | 得到dislike dialog 穿山甲SDK使用 信息流自渲染广告 |
方法名 | 说明 |
getAppName() | 获取应用名称,用于在合规信息、公示页或隐私弹窗中展示当前应用的名称 |
getAuthorName() | 获取作者/开发者名称(公司或个人主体),用于主体信息公示 |
getPackageSizeBytes() | 获取应用安装包大小(单位:字节),可用于在应用信息页或下载提示中展示包体积 |
getPermissionsUrl() | 获取权限使用说明页面链接,用于跳转查看应用所用系统权限及其用途说明 |
getPermissionsMap() | 获取权限与用途映射表,通常 key 为权限名、value 为用途说明,用于本地渲染权限列表 |
getPrivacyAgreement() | 获取隐私协议文案或隐私政策链接字符串,用于隐私相关展示与跳转 |
getVersionName() | 获取应用版本名(如 1.0.0),用于在合规信息或关于页面中展示当前版本 |
getFunctionDescUrl() | 获取功能说明页面链接,用于展示应用及其功能的详细介绍和使用场景 |
getAppInfoExtra() | 获取应用额外信息的扩展字段集合(key-value),可自定义补充合规或业务相关信息 |
getRegUrl() | 获取应用备案信息或注册信息的查询/展示链接,用于跳转查看详细备案信息 |
方法名 | 说明 |
void showDislikeDialog() | 展示Dislike dialog |
void setDislikeCallback(IMediationDislikeCallback dislikeCallback) | 设置dislike选中时的回调 |
方法名 | 说明 |
void onSelected(int position, String value) | 选择触发,位置position,值value |
void onCancel() | 点击取消 |
void onShow() | show |
MediationNativeToBannerUtils.java工具类示例代码
详细事例可参照demo:MediationBannerActivity类。
在线客服智能客服 7*24小时在线人工客服 工作日 10~12点/14~19点