gpt4 book ai didi

android - 是否可以使用 Flutter 在特定于平台的 Android 服务中运行 dart 代码?

转载 作者:行者123 更新时间:2023-12-03 04:36:24 24 4
gpt4 key购买 nike

我有一个在 Flutter main.dart 中运行良好的 Flutter 库,但我需要在 Android 服务中使用它才能在后台运行。
由于 Flutter 还不支持 Services(据我所知),所以我使用 Java 创建了一个原生 Android Service 并使用 MethodChannel 启动它。
但我不知道如何在我的服务中使用 Flutter 库。
那么是否可以在 Android 服务中使用 Flutter 库,或者我需要将库转换为 Java 代码?
我已经研究过隔离,Background processesGeofencing但它们与服务并非 100% 相同。
更新
实际上,打开前台服务后,Android 会一直让应用程序在后台运行。所以打开服务并显示一个通知就是我需要做的,不需要在服务中添加更多代码。

最佳答案

可以使用 MethodChannel但不是从 dart 调用并在 native 平台中处理它,您应该在 dart 中处理调用并从 native 平台调用。在 Dart 中,你会有这样的东西:

MethodChannel _methodChannel = MethodChannel('bridge');
_methodChannel.setMethodCallHandler((call) {
doSomething();
});
在您的 android 平台服务中,您将在同一 channel 上调用一个方法:
MethodChannel(flutterEngine.dartExecutor.binaryMessenger, 'bridge').invokeMethod('method', argument)

关于android - 是否可以使用 Flutter 在特定于平台的 Android 服务中运行 dart 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64022208/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com