相信最近iOS开发者应该收到了工信部审查广告不合规的邮件,需要这样整改(只针对我们自己应用中集成的广告类型,其它的我不管)
我自己项目中是把所有合规修改都写成可配置的,例如你可以后台配置成A市合规,B市不合规,反正客户端全部根据取到的后台配置来展示,本demo全是写死的,你们自己可以根据需要去配置.
注意:每次升级了广告SDK需要针对相应广告商再测一下,因为对象,类,视图层级可能都会变化,一定要测一下,如果有问题再做相应修改
1 .开屏: (百度,广点通,穿山甲)
不合规理由是: 全屏可点击,导致用户会误触
修改: 往广告上加一层透明view,再在view下方添加一个按钮(注意:现在这三家的广告位已经支持配置合规按钮,但是一旦配置就表示该广告位全局生效,并不能实现部分用户生效,部分用户不生效,不够灵活,我们自己添加就能根据自己的后台服务来控制,非常灵活)
2.插屏
插屏广告添加了一个操作,就是点击后: 先展示几百毫秒的Toast"即将跳转详情页面或第三方应用",然后再跳到详情页面或第三方应用.这里用到了runtime方法添加,方法交换等
(老板还提了一个需求:插屏广告如果10s内没有点击,那么让插屏广告退出,这个比较难,我研究了好久才找到这几家的插屏广告的关闭按钮对象,然后调用sendActionsForControlEvents:方法来实现,有些人可能会说直接dissmiss不就好了,但是你并不清楚插屏点击关闭按钮还做了什么操作,你直接dismiss可能会影响到这个广告位的ecpm啥的,这里不属于合规的内容,所以没往demo中写)
3.信息流
信息流是在右上角加了一个"×"按钮,用户点击后要能关闭这条信息流,这个太简单就不往demo中写了