美文网首页
Android消息传递BroadCast、Handler和Eve

Android消息传递BroadCast、Handler和Eve

作者: 王灵 | 来源:发表于2019-03-04 22:44 被阅读0次

    BroadCast

    广播是相对消耗时间、空间最多的一种方式。它是四大组件之一,许多系统级的事件都是通过广播来通知的,比如:电量的变化、网络的变化、短信的接收和发生状态等。
    优点:与sdk连接紧密,当需要与Android交互时非常方便。而且可以实现跨进程通讯。必要时还能启动Activity
    缺点:资源占用较多,且需要依赖Context

    Handler

    handler一般用于线程间通讯。handler的定义类和内部类是绑定的,这就造成了事件发布者和接受者之间的高耦合。使用handler最明显的优点是发生问题时,可以非常明确、快速的进行定位。

    EventBus

    eventbus的优势在于调度灵活,不需要依赖Context也没有Handler那样的耦合。可继承、优先级、粘滞是EventBus比之于BroadCast和观察者最大的优点。缺点也很明显,EventBus中的事件分发是通过注解函数的参数类型决定的,这就导致了当接受者过多或相同参数时很难理清消息流。

    相关文章

      网友评论

          本文标题:Android消息传递BroadCast、Handler和Eve

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