iOS 广告SDK总结(二),ios 15正式版耗电,ios15.4小组件bugiOS广告SDK概要(2)最后一部分是广告SDK的设计。SDK接口设计一个好的SDK至少应该包含三个部分:SDK库访问文档演示SDK停靠文件目录1。API和注释根据以往的经验,API接口越简单越好。最好的外观是初始化接口、调用接口和关闭接口......
最后一部分是广告SDK的设计。
SDK接口设计
一个好的SDK至少应该包含三个部分:
SDK库
访问文档
演示
SDK停靠文件目录
1。API和注释
根据以往的经验,API接口越简单越好。最好的外观是初始化接口、调用接口和关闭接口。搞定;打电话的人不想再花一秒钟看你的API。
简单合理;
如果一种方法能实现,两种方法都不会采用;
该方法应该具有尽可能少的参数。如果方法中有三个以上的参数,它将被打包成一个参数模型。SDK内部能获取的,内部获取就好。
不得实现的协议用optional关键字明确标记。
内部变量不对外公开。如果需要公开它们,readonly属性
如果有类似的广告形式,比如直播和视频贴片,功能差不多,就分两类分别开发。
尽量用同步接口代替异步接口。
记得提供一个版本号接口。
命名规范
类名统一以平台为前缀,方便开发者区分,比如YXAdSDKXXX类。
采用驼峰命名,类名、方法名、字段名都可以明确表示其用途。
多个值是枚举值。
详细注释
明确指出当前方法调用线程、参数范围、参数类型、默认值等信息。
必要的内部逻辑通知开发者,比如开屏请求,内部保证2s内回拨,开发者不需要添加倒计时定时器。
新版本增加了接口、属性等。,并添加相应的版本标识符。
可扩展
界面设计要能考虑到未来可预见的变化,这也是区分等级的点;比如原来的广告请求参数,设计一个ext参数,以后有需要可以直接传到这里。
回调协议尽量详细,最好是UI全流程开放;比如视频补丁的回调,加入开始的回调,当前播放时间等。如果开发者临时需要,没必要换SDK。
隐私
SDK要有自我保护意识,也就是说开发者不能改变一些外部的参数和数值,这样会影响SDK的内部逻辑。比如原生广告会将素材模型回调给开发者,不要在模型中添加上报url等字段,而是保留在SDK内部。
每一个暴露给开发者的字段,都要先暴露后曝光,所以开发的时候要慎重考虑。
2。文档
好的文档会让开发者舒服的对接,后面的麻烦会少一些。
文档至少应该包含以下几个部分,基本都是各大SDK做的:
图中还有千言万语:
广告SDK访问文档目录
3 .演示
demo的作用是让开发者了解调用过程,降低学习的成本;也就是说,方便他们复制代码。
向开发人员展示所有暴露的类和方法,有时还会添加一些特例,为开发人员提供一些便利。
SDK架构设计
好的外部接口+好的内部设计才是好的SDK。
SDK的架构和App相差不大。其实都是MVC的变种,只不过SDK没有C,所以应该还有一个容器来处理UI和数据交互逻辑。
按照层级,从上到下可以分为:API层gt;服务层gt;模块层
API层,提供开发者调用接口,内部调用服务层,封装一些逻辑和数据等。
服务层、业务层、调用模块层功能块、组合数据、创建UI、处理业务逻辑等。,是SDK的核心层。
模块层是底层功能块,通常包括
网络(客户端)
缓存(模型缓存、图片视频缓存、报表信息缓存等。)
实用工具(已提供)
数据中心(提供全局配置信息、型号信息、沙盒目录等。)
记录器(提供日志和报告服务)
库(可及性、编码/解码、一些扩展)
个人对建筑的感受
初始的底层模块要设计好,设计不好就要重构。
尤其是模块之间的接口,大多是上层考虑的,是考验经验水平的地方,只懂理论做不到。
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部