美文网首页APP开发实战
APP开发实战56-层间通信

APP开发实战56-层间通信

作者: xjbclz | 来源:发表于2016-06-20 21:17 被阅读63次

15.3层间通信

15.3.1通信方式

层间通信主要有两种方式:

(1)   消息

优点:层间的耦合性比较小,而且一个消息可以有多个接收方,如广播消息。

缺点:如果系统中的消息比较多,可能处理速度比较慢,或消息队列满了,接收方无法接收到消息。还有一种情况是A发消息给B的,但可能先被C接收了,B也无法接收到消息。

(2)   回调函数

优点:处理速度比较快。

缺点:层间的耦合性比较大。

15.3.2交互模式

层间通信交互模式:

(1)同步调用

A向B发出请求后,一直等收到B的反馈后,再继续执行。

(2)异步调用

A向B发出请求后,不等待B的反馈,就继续执行后续代码。

MVP架构的运行示例:

UI层的Activity在启动之后实例化相应的Presenter,App的控制权后移,由UI转移到Presenter,两者之间的通信通过BroadCast、Handler或者接口完成,只传递事件和结果。

举个简单的例子,UI层通知逻辑层(Presenter)用户点击了一个Button,逻辑层(Presenter)自己决定应该用什么行为进行响应,该找哪个模型(Model)去做这件事,最后逻辑层(Presenter)将完成的结果更新到UI层。

相关文章

  • APP开发实战56-层间通信

    15.3层间通信 15.3.1通信方式 层间通信主要有两种方式: (1) 消息 优点:层间的耦合性比较小,而且一个...

  • Handler和Binder

    FrameWork层的Handler和Binder; 通信分为: App间的通信——BinderApp内部通信——...

  • 从 iOS 9 NSNotificationCenter 无需手

    NSNotificationCenter 是 iOS 开发中经常会用到的对象间通信方式,尤其是一对多和跨层通信。 ...

  • APP开发实战23-通信过程

    6.5.5通信过程 主机A的应用程序要能和主机B的应用程序通信,必须通过Socket建立连接,而建立Socket连...

  • Web App开发--Vue组件间通信

    组件间为什么需要通信 大的Vue项目由组件构成,每个组件维护各自的状态数据。但再完美的架构,也不可能实现组件之间完...

  • iOS 进程间通信(APP间通信)

    进程是指在系统中正在运行的一个应用程序,每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内,iOS ...

  • 02 项目架构-IPC通信框架

    IPC通信框架 1、多进程使用场景 Android App开发中的IPC(进程间通信)无处不在。比如我们使用的Al...

  • iOS开发:两个独立应用之间的通信跳转

    两个独立App之间的跳转通信,相信做过开发的同志们都不陌生,其实最常见最熟悉的App间的跳转通信就是第三方分享、登...

  • app间的通信

    应用程序只能与设备上的其他应用程序进行间接通信。您可以使用AirDrop与其他应用程序共享文件和数据。您还可以定义...

  • {Android} 开发进阶大纲(持续更新~)

    App开发框架知识体系(app亦对象) 职业生涯规划 面向Android中的一切实体 实体间的通信方案 实体中数据...

网友评论

    本文标题:APP开发实战56-层间通信

    本文链接:https://www.haomeiwen.com/subject/mqowdttx.html