hot*_*key 7 java android broadcastreceiver rx-java
在1.0.0之前,RxAndroid中有AndroidObservable类的fromBroadcast方法, 用于以反应方式订阅广播.在Grokking RxJava中提到过:
我也喜欢
AndroidObservable.fromBroadcast(),它允许你创建一个Observable像一个像BroadcastReceiver.这是一种在网络连接发生变化时得到通知的方法:Run Code Online (Sandbox Code Playgroud)IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION); AndroidObservable.fromBroadcast(context, filter) .subscribe(intent -> handleConnectivityChange(intent));
在1.0.0之后,RxAndroid放弃了很多功能并分成了RxAndroid本身,现在它只有线程化的东西,RxLifecycle和RxBindings.
他们似乎都不包含AndroidObservable与fromBroadcast或fromSharedPreferenceChange.
它是在一些实际和支持的库中实现的吗?
作为模块化工作的一部分,此功能在1.0版本中被删除.您可以在RxBroadcast中找到替代品.要使用它,请添加依赖项build.gradle:
compile 'com.cantrowitz:rxbroadcast:1.0.0'
Run Code Online (Sandbox Code Playgroud)
并使用如下:
Observable<Intent> = RxBroadcast.fromBroadcast(context, intentFilter);
Run Code Online (Sandbox Code Playgroud)