How would you pass info from Flutter back to Android/Native code if needed to interact with a specific API / hardware component?
Are there any Event Channels that can send info the other way or something similar to a callback?
This is a simple implementation showcasing :
code is based on example from :https://flutter.io/platform-channels/#codec
1.Passing string value "text" :
String text = "whatever"; Future<Null> _getBatteryLevel(text) async { String batteryLevel; try { final String result = await platform.invokeMethod('getBatteryLevel',{"text":text}); batteryLevel = 'Battery level at $result % .'; } on PlatformException catch (e) { batteryLevel = "Failed to get battery level: '${e.message}'."; } setState(() { _batteryLevel = batteryLevel; });
}
2.Getting back response "batterylevel" after RandomFunction();
public void onMethodCall(MethodCall call, MethodChannel.Result result) { if (call.method.equals("getBatteryLevel")) { text = call.argument("text"); String batteryLevel = RandomFunction(text); if (batteryLevel != null) { result.success(batteryLevel); } else { result.error("UNAVAILABLE", "Battery level not available.", null); } } else { result.notImplemented(); } }
Hope this helps!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With