App 组件化/模块化之路——使用SDK的思路进行模块化设计接口

  • 时间:
  • 浏览:0
  • 来源:uu快3下载网站_uu快3开户二维码

与用户相关的API都放上此模块中进行管理,而其它模块进行使用就很方便了。

什么都有有,实现另有四个 Contract 接口中的 View 接口。人太好 是空实现。

网络请求中最常见的莫过于用户授权登录模块了。现在以此模块为例,共要有以下接口

具体的 API 实现中,我这里就使用了时候 网络框架中的代码 SignInRequest。

假设另有四个 App 包含有有哪些接口,如此咋样设计有有哪些接口呢?按照我们 时候 设计的网络请求框架也不把每另有四个具体的 API (类似于登录接口) 写另有四个 Request 类。

思路人太好 也简单。不错,为了我能 的接口更好的复用,我们 把整个模块相关的接口进行整体设计。对外统一接口和回调最好的最好的办法 。我们 来看代码。

AuthManager 类似于类设计单例模式。除了具体 API 实现接口还有以下哪有几个最好的最好的办法

类似于 Contract 接口设计思路是源于googlesamples/android-architecture 。曾经的好处我认为也不很好的管理类似于模块中的众多的接口和回调最好的最好的办法 ,而维护者一看就一目了然,非常清晰。

AuthManager 中还有另有四个 AuthDBHelper 类,类似于是用户信息的缓存类。假如用户登录过了,如此下次也不直接取缓存中的登录信息就还须要了。

最后,我们 实现 Contract 中的 Presenter 接口了。类似于也不我们 类似于模块化接口的核心类了。

为有哪些要提供另有四个空实现的类呢?人太好 为了方便使用。想想你使用过的 WebViewChrome 的接口回调。

类似于的注册接口对应另有四个 SignUpRequest 类,于是曾经有哪有几个个接口就又哪有几个个 Request 类。

预览以下整体的社会形态

类似于,我的 App 里什么都有页面就有用到获取本地音乐什么都有有视频的列表。同样地,有以下哪有几个类。

首先,在Application中进行初始化

什么都有有你的 App 业务比较简化,如此 Request 类数目就会暴增,这时候 咋样组织管理有有哪些 Request 类也不另有四个什么的什么的问题了。

目前在项中中除了 API 还须要曾经设计之外,还有其它另有四个功能假如各个模块就有什么都有有总爱使用到的都还须要使用曾经的思路。

什么都有有在须要调用接口的页面中,如LoginFragment

在不久时候 分享一篇《App 组件化/模块化之路——咋样封装网络请求框架》文章介绍了我在项目中封装网络请求框架的思路。开发另有四个 App 会涉及到什么都有网络请求 API ,类似于登录注册接口、用户信息接口、业务列表请求接口等等。而本文介绍的是咋样模块化设计有有哪些接口,使得项目中更好地复用代码。当然这仅仅是一家之言,欢迎留言拍砖。

曾经用起来是就有很方便呢?

类似于用法是就有与其它第三方 SDK 的使用类似于呢?还须要感受一下,人太好 类似于也是时候 提到的 SDK 设计思路。

首先,根据 API 设计 Contract 接口,在这里定义接口请求最好的最好的办法 和回调最好的最好的办法 。类似于我们 类似于登录模块,就还须要定义另有四个 AuthContract 协议接口,在类似于 Contract里面又管理着 PresenterView 接口,分别代表具体 API 请求最好的最好的办法 和数据回调最好的最好的办法 。其中在 View 接口中定义了哪有几个通用的回调 onBegin, onFinish, onError,分别代表请求开始英文、开始英文、出错等几种情形,其它最好的最好的办法 也不具体 API 返回的数据回调了。