Dig*_*iro 12 android android-fragments flutter
在 Flutter 中可以从 Dart调用Java 代码。此外,插件android_intent允许Activity使用 Dart 代码启动 Java Android
但是,如果我们想在 Flutter Widget 中使用 Android Fragment,这可能吗?我们怎么做?
或者使用Fragments的唯一方法是在Java中声明一个新的Activity,并在Flutter中调用启动该Activity?(就像我开头说的)
到目前为止,我找不到任何方法可以直接在 Flutter 应用程序中直接实现 Android 组件。然而,相反的情况也可能发生,即在 Android 应用程序中使用 Flutter 片段。因此,我可以向您建议解决此问题的方法,该方法可能会导致相同的结果:
void startAndroidActivity() async {
//TODO: fix result type, etc.
dynamic result = await MethodChannel("CHANNEL_X").invokeMethod('METHOD');
}
Run Code Online (Sandbox Code Playgroud)
public class MainActivity extends FlutterActivity {
private MethodChannel.Result result;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
new MethodChannel(getFlutterView(), "CHANNEL_X").setMethodCallHandler((call, result) -> {
if (call.method.equals("METHOD")) {
Intent intent = new Intent(this, MyActivity.class);
this.result = result;
startActivityForResult(intent, data);
}
});
GeneratedPluginRegistrant.registerWith(this);
}
//TODO: Handle result
}
Run Code Online (Sandbox Code Playgroud)
我可以给你的另一个参考是这个,它也许可以让你在 Flutter 中导入你想要的东西,但它需要更多的时间: https: //medium.com/@KarthikPonnam/build-your-own-plugin-使用-platformviews-flutter-5b42b4c4fb0a
| 归档时间: |
|
| 查看次数: |
1014 次 |
| 最近记录: |