Open KML/GPX files in appropriate external map app
If you found a Flutter plug-in that is open source like open_file, you could just add in the MIME types yourself.
For KML format: https://en.wikipedia.org/wiki/Keyhole_Markup_Language
For GPX format: https://en.wikipedia.org/wiki/GPS_Exchange_Format
As the package is open source I was thinking of modifying the code, as the mapping appears to be straight forward:
https://github.com/crazecoder/open_file/blob/master/ios/Classes/OpenFilePlugin.m
and
You would need to fork the projects and add in the types you wanted.
Alternately you've posted issue ticket #116
where the repo owner responded with
OpenFile.open("/sdcard/example.txt", type: "text/plain", uti: "public.plain-text");
Do respond if that works, as I was uncertain if both of the different platforms' filetype (uti
vs MIME type) works universally in Flutter or if you have platform specific detection code to assign the filetype correctly.
S-Man
Author Advanced PostgreSQL Querying ISBN 978-3752967340
Updated on December 25, 2022Comments
-
S-Man over 1 year
My Flutter (Android and iOS) app generates KML or GPX files, which works as expected.
Now I want to add a button "Open file" which should open such a system dialog where the installed map or other consuming apps (which can handle such formats) are listed to be chosen.
How can I open this dialog? How can I find the format-related apps and how can I send the file to these apps. I guess, there is a plugin for this, but couldn't find one. It must work on Android and iOS, nice-to have is web support.
I just saw open_file but I am not quite sure, if it works as expected because it doesn't list support for KML/GPX.
Thanks in advance!