(ToBid)优推自定义适配器接入说明文档
(ToBid)优推自定义适配器接入说明文档
文档日志
版本 | 更新日期 | 更新记录 |
---|---|---|
1.0 | 2024-09-27 | 初版 |
参考链接
优推ADN接入文档:
优推adn接入文档:https://lemon.gameley.com/flowdocs/
ToBid聚合自定义广告网络文档:
Tobid聚合提供的自定义广告网络文档:自定义广告网络 | Sigmob
优推自定义适配器接入示例:
优推adn适配器参考Demo-Android:优推自定义适配器接入ToBid聚合示例Demo
优推adn适配器参考Demo-IOS:优推自定义适配器接入ToBid聚合示例Demo
ToBid自定义聚合适配器接入说明:
ToBid聚合提供的适配器接入参考文档-Android:自定义适配器接入说明 | Sigmob
ToBid聚合提供的适配器接入参考文档-IOS:自定义适配器接入说明 | Sigmob
1.主要流程说明:
1.1 在项目中创建各广告类型和初始化的Adapter类:
类名可参考下图示例(类名可自定义,图中示例仅供参考),保证各广告类型对应一个类即可,并额外需要一个负责初始化SDK的类,如示例中的YoutuiCustomerProxy
广告类型:
Reward | |
Interstitial | |
Banner | |
Feed |
1.2 在ToBid聚合后台配置信息:
相关信息
💡 请先阅读Tobid聚合提供的自定义广告网络文档:自定义广告网络 | Sigmob
根据Tobid聚合自定义广告网络文档中的步骤,创建自定义广告网络,并在【编辑自定义广告网络】-【Adapter类名】下填写1.1中创建的Adapter类名;Android需要填写全路径,IOS则只需填写类名;
在【流量管理】-【应用管理】-【已绑定广告网络】-【+】中绑定创建好的自定义广告网络
【应用维度参数】填写优推后台创建的应用id;
在代码中,继承 WMCustomAdapterProxy 并重写 initializeADN 时,可从参数 serverExtra 中获取该配置,用于初始化优推sdk:
ios在实现 AWMCustomConfigAdapter 协议后在 initializeAdapterWithConfiguration 的参数
在【+添加广告源】时,【代码位ID】填写优推后台创建的代码位ID(注意代码位id的类型要和聚合广告位类型一致),
在代码中,继承 WMCustomXXAdaprter 并重写 loadAd 时,可从参数 serverExtra 中获取到该配置,用于加载优推广告;
ios 则是实现对应协议后,在 loadAdWithPlacementId 的参数
注意:模版渲染和自渲染广告由同一个Adapter类加载,因此需要在【自定义配置信息】中添加可区分类型的标识,并且模版渲染广告加载需要传入宽度,单位dp;配置信息需要json格式,参考下图配置;
1.3 根据ToBid聚合自定义适配器接入说明实现协议:
ToBid聚合将会通过运行Adapter适配器类的方式来实现adn加载广告的操作,因此需要在适配器中完成adn加载广告的操作,并通过ToBid聚合提供的回调函数将各阶段状态通知到聚合;
ToBid聚合提供的适配器接入参考文档-Android:自定义适配器接入说明 | Sigmob
ToBid聚合提供的适配器接入参考文档-IOS:自定义适配器接入说明 | Sigmob
适配器代码可参考目录【参考链接】中提供的Demo;
2.常见问题说明:
2.1 广告无填充
- 确认优推 ADN SDK 是否完成初始化,适配器load函数是否被正常调用;若调用失败,请检查后台配置的Adapter类是否正确(详见目录1.2);
- 打印并确认下发的appid和代码位id是否正确,是否和优推后台创建的一致。
- 确认代码位id对应的广告类型和请求广告所用的load函数是否正确对应;
2.2 开屏广告未铺满屏幕
优推adn开屏展示将会铺满提供的容器宽高;
若发现开屏广告未铺满容器,请按以下方式修改(增加中间层,来避免不同布局方式之间的冲突):
FrameLayout frameLayout = new FrameLayout(SplashShowActivity.this);
frameLayout.setLayoutParams(new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
saAllianceAd.showSplash(frameLayout); //将中间层传给adn
splashContainer.addView(frameLayout); //聚合容器添加中间层