所以,我们有
MethodChannel
这包括在
Writing custom platform-specific code
向javaland发送一个请求并返回一个响应的文档部分,但我想做的是在android&my flutr应用程序上运行的服务之间设置一个文本pubsub通道,这将允许一种替代方法
my earlier question about passing closures as arguments to Java-side
因为它允许
Future = doPayment(
amount: 100.00,
currency: 'USD',
onPasscodeEntry: () => _renderInputBox(),
onValidation: () => _doValidation()
);
通过以下方式实施:
Future doPayment({int amount, String currency, Function onPasscodeEntry, Function onValidation}) {
Subscription sub;
try {
sub = subscribe(channel: 'myapp/doPayment/$paymentUid')
sub.send("initialize", {"amount": amount, "currency": currency});
sub.receive("onPasscodeEntry").then((payload) => onPasscodeEntry(payload));
sub.receive("onValidation").then((payload) => onValidation(payload));
return sub.receive("result")
finally {
sub?.send("deinitialize");
sub?.end()
return null;
}
}
你明白了:-)
它
似乎
喜欢
BasicMessageChannel
可能是我的朋友,但没有使用示例,也没有关于如何在平台端(也称为javaland)钩住它的示例,我也希望有一个receive函数——它等待javaland中发生的事情并将通知推送到flutter side,
一个简单的例子是
方法通道
使用示例能够将电池状态更新推送到flutter中,而不仅仅是从flutter按需获取它们。
上面的例子并没有特别的必要,但是我想建立一个与平台的双向通信通道-对于我正在做的事情,我只需要知道在这一点上,如果我去flutter,这扇门不会对我关闭。
我正在寻找正确的类/库来使用Frut-Southand Java侧和代码示例,因为该部分在DOC中并不是非常好的覆盖。