S-M*_*Man 5 android kml gpx ios flutter
我的 Flutter(Android 和 iOS)应用程序生成 KML 或 GPX 文件,它按预期工作。
现在我想添加一个按钮“打开文件”,它应该打开这样一个系统对话框,其中列出了已安装的地图或其他消费应用程序(可以处理此类格式)以供选择。
如何打开此对话框?如何找到与格式相关的应用程序以及如何将文件发送到这些应用程序。我想,有一个插件,但找不到。它必须在 Android 和 iOS 上运行,很高兴有网络支持。
我刚看到open_file但我不太确定它是否按预期工作,因为它没有列出对 KML/GPX 的支持。
提前致谢!
如果您找到像open_file这样的开源Flutter 插件,您可以自己添加 MIME 类型。
对于 KML 格式:https ://en.wikipedia.org/wiki/Keyhole_Markup_Language
对于 GPX 格式: https: //en.wikipedia.org/wiki/GPS_Exchange_Format
由于该包是开源的,我正在考虑修改代码,因为映射似乎很简单:
https://github.com/crazecoder/open_file/blob/master/ios/Classes/OpenFilePlugin.m
和
您需要分叉项目并添加您想要的类型。
或者您发布了问题票#116
回购所有者的回应是
OpenFile.open("/sdcard/example.txt", type: "text/plain", uti: "public.plain-text");
如果可行的话请回复,因为我不确定两种不同平台的文件类型(uti与 MIME 类型)是否在 Flutter 中通用,或者您是否有特定于平台的检测代码来正确分配文件类型。