Android开发规范:SDK设计规范

我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情

通用规范

  1. SDK发版时需配套有完整且详细的使用说明文档,包括混淆配置说明;
  2. SDK需要详细记录每个版本的变更内容;
  3. SDK如果对外开放,需要有一个专门的网站,同时附上SDK的说明文档、demo、变更历史等;
  4. SDK的minSdkVersion要尽量小,最好不要超过使用SDK的项目的minSdkVersion;
  5. 尽量不要引用第三方库,要尽量使用android系统自带的功能,然后在其基础上进行封装。如果一定要用到第三方库,可以使用provided依赖,并告知调用方主动依赖这个第三方库。
  6. 如果打出来的包是aar格式,需要注意res下面的资源文件名称,以避免和调用方的res文件名称冲突,所以一般sdk里面的res文件名称一般加上特定的修饰符,比如公司+项目名称。
  7. SDK需要有较强的容错性,要增大力度对于SDK内部异常进行捕获。
  8. SDK对外提供的接口,需要对其传入的参数的合法性和有效性进行检测。
  9. SDK内部对于关键路径要有详细的Log记录,便于后期排查问题。

开发规范

SDK代码结构层次分明,功能清晰。
一般我们可以分为三层:

  1. 接入层
    接入层的功能就是对外暴露接口,供给调用方使用。
    一般对外暴露的接口我们会定义一个接口文件,里面的方法都是可以对外提供的接口。
    所以接入层一般都是定义的接口文件,另外还有一个统一管理所有业务功能模块的类,是外界跟SDK交互的统一入口。它还负责统一配置和进行初始化工作,比如初始化业务模块的xxxManager文件。
  2. 业务层
    业务层的作用就是实现具体的业务逻辑。
    对于业务层的设计,我们会按照业务功能划分为不同的模块,每一个模块通过xxxManager文件进行管理。xxxManager会具体实现接入层定义的接口方法。
  3. 基础层
    基础层里面包括各种功能模块,比如SDK自行封装的网络请求模块,还有像数据库模块、日志模块、crash模块等等。总而言之就是提供对业务层的支持。

在这里插入图片描述

demo

https://github.com/ddnosh/android-demo-sdk

在这里插入图片描述

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值