rx_method_channel
Reactive (Rx) wrapper for method channel in Flutter.
How to Use?
- Add this dependency to pubspec.yaml
- Make method channel using
RxMethodChannel
import 'package:rx_method_channel/rx_method_channel.dart';
void main() async {
final channel = RxMethodChannel(channelName: "channelName");
// Observable
final observableSubsciption = channel.executeObservable(
methodName: "methodName",
arguments: {},
).listen((event) {
});
observableSubsciption.cancel();
// Completable
final completableOperation =
channel.executeCompletable(methodName: "methodName");
await completableOperation.valueOrCancellation().whenComplete(() {
print("Completed");
});
// Single
final singleOperation = channel.executeSingle(
methodName: "methodName",
arguments: {
"arg": "someArg",
},
);
final value = await singleOperation.valueOrCancellation();
print(value);
}