OTTO是一个EventBus类型的事件传输总线,它可以提供“存储转发”的功能,让你APP中各个组件的交流更加便利,让你的程序分层更加清晰。
使用场景
OTTO基于Observer设计模式。它有发布者,订阅者这两个主要对象。OTTO的最佳实践就是通过反射牺牲了微小的性能,同时极大的提高了程序的耦合度,更加利于MVP分工开发与维护。业务层开发者在处理资源(比如Db, REST等)后并发布消息,展示层开发者(比如Activity/Fragment)就可以处理消息,而不用关心数据是怎么来的(在读报纸的时候需要知道编辑们如何排版印刷吗?),比如:
Fragment,Service或者Activity组件之间的通信。比如
导航菜单的NavigationDrawer与Activity的通信
Activity与Activity的通信(在设置界面上勾选了夜间模式,回到主界面就发现已经完成变色了;或者你在详细界面上点了一个赞,回到主界面发现已经同步增加了一个"赞")
MVP(Model View Presidenter)架构中,Model与Presidenter的回掉通信。包括但不限于REST, DB, SP, BroadcastReceiver, ContentObserver。
一、Android Studio中配置Otto (Eclipse中直接下载jar包导入)
跟之前介绍的其他的框架一样,它只需要简单地在build.gradle中配置下面的部分即可
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:19.+'
/
/otto 所需要依赖的包
}











