Android客户端如何设计架构

本文介绍了Android客户端在设计架构时的思路,分为功能型和服务型两大类。对于功能型app,强调了页面跳转路由、activity间通信以及公共组件的设计,并提出了一种四层架构:网络层、支撑层、通用组件层和业务层。服务型app则在组件层和业务层之间增加了服务层,用于管理和调度各种service。最后,总结了架构设计在实际应用中的复杂性和重要性。
摘要由CSDN通过智能技术生成

当我们在新开发一款APP时,我们在初期要如何设计架构呢?在这里我根据我的经验,总结了一些基本的架构思路。

客户端架构设计的时候,首先需要充分考虑到所开发的app的类型,这里我分为功能型和服务型两大类,功能型的app侧重业务和功能,服务型的app侧重服务和运算。下面我就具体来讲讲针对这两种类型的通用架构。

功能型app

功能型app的activity比较多,整个app都以一个个activity承载业务和功能,在设计这类app时,我们需要考虑哪些要素呢?

由于activity比较多,我们需要考虑页面的跳转路由,这里会有人说直接用startactivity就可以实现页面的跳转呀,但是一款APP我们在设计的时候,通常都是多module的架构,这样可以把不同的模块放在不同的module里面,实现解耦,不同的module之间想要实现activity的跳转,就需要采用路由协议了。在路由框架这一块,阿里的ARouter算是用的比较多的一款开源框架,当然我们也可以自己实现,路由框架也不是很复杂。

其次,不同的activity之间需要通信,常见的线程间的通信工具有handler,回调,以及以生产者消费者为代表的时间总线,或者是开源的eventbus这一类的事件总线,我们要根据业务类型已经想要达到的解耦标准,来选择设计一种或者多种通信工具。进程间的通信方式有AIDL,内容提供者等Android原生提供的以binder为基础的通信方式,我们也可以自己设计socket或者网络等方式来进行进程间通信。

由于业务比较多,我们还需要考虑如何沉淀公共组件等自定义View,以我们用来支撑我们业务的通用sdk&

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值