通过 Flutter 打开日历 ICS 链接

问题描述 投票:0回答:1

我的服务器有一个端点来生成 .ics 文件 (

text/calendar
) 内容类型。

当我尝试通过 launchUrl 打开它时,我收到以下弹出屏幕 - 而不是标准的“添加到日历”弹出窗口。如果我直接在浏览器中使用此端点(而不是通过 Flutter) - 它工作正常。

这是我正在使用的代码:

launchUrl(Uri.parse('https://server.com/event.ics'), mode: LaunchMode.externalApplication);

我知道 add_2_calendardevice_calendar,但我不想在此处包含另一个依赖项,而只需打开普通浏览器即可。

enter image description here

flutter calendar icalendar
1个回答
0
投票

我发现的最好的方法,实际上似乎有效,就是在 ics url 前面加上这个

https://calendar.google.com/calendar/r?cid=webcal://

因此,通过提供的示例,您将拥有:

launchUrl(Uri.parse('https://calendar.google.com/calendar/r?cid=webcal://https://server.com/event.ics'), mode: LaunchMode.externalApplication);

这将启动谷歌日历的网络版本,并允许订阅。 我发现打开 Android 日历应用程序的每一种方法,最终都没有真正使用订阅。

© www.soinside.com 2019 - 2024. All rights reserved.