ネイティブ Android からフラッター画面を開こうとしています
そのため、データをダーツに返すために MethodChannel を使用しようとしており、現在の画面に移動するメソッドを呼び出します
しかし、私のコードは機能していません
これは私のコードです
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
super.configureFlutterEngine(flutterEngine);
String channelName = "app_channel";
MethodChannel methodChannel = new MethodChannel(flutterEngine.getDartExecutor(), channelName);
methodChannel.invokeMethod("openCaller", false, new MethodChannel.Result() {
@Override
public void success(@Nullable Object result) {
Log.i("fromInvoke","success" + result.toString());
}
@Override
public void error(String errorCode, @Nullable String errorMessage, @Nullable Object errorDetails) {
Log.i("fromInvoke","failed" + errorMessage);
}
@Override
public void notImplemented() {
Log.i("fromInvoke","not implemented");
}
});
}
}
static const platform =
const MethodChannel('app_channel');
@override
void initState() {
super.initState();
platform.setMethodCallHandler(invokedMethods);
}
これはグローバル関数です
Future<dynamic> invokedMethods(MethodCall methodCall) async {
switch (methodCall.method) {
case "openCaller":
print("arrived to open caller");
// Navigator.pushNamed(context, "/ring");
}
}