如何在flutter app中实现Open with menu?

How to implement Open with menu in flutter app?

我见过很多使用 flutter 编写的音乐播放器或其他应用程序,但 none 其中有一个 open with 菜单。

明确地说,我的意思是如何让我的音乐播放器/其他应用程序显示在打开的菜单中,比如如果我想从文件中访问音乐并且我的应用程序位于该菜单中。

有什么办法吗,因为我找不到,也找不到相关的问题。

以上是三星显示的 open with 菜单,其他 android 设备上也有类似的菜单。

Open with 菜单是 OS 提供的原生功能。菜单在同一 phone 的不同应用中看起来相同,但在其他 phone 上看起来不同。

要在 Flutter 应用程序中触发此菜单,我们可以使用像 open_file 这样的包,它会调用本机 OS 方法来打开文件:

import 'package:open_file/open_file.dart';

OpenFile.open("/sdcard/example.txt");

如果为该特定文件扩展名分配了多个应用程序,Open with 菜单将出现并提示最终用户选择应用程序。


也就是说,根据您的情况,完全可以为您的应用创建自定义 Open with 菜单,但建议使用 OS 原生提供给我们的菜单。