如何使用离子电容器将事件添加到移动设备的日历

Posted

技术标签:

【中文标题】如何使用离子电容器将事件添加到移动设备的日历【英文标题】:how to add events to the Calendar of the mobile device with ionic capacitor 【发布时间】:2021-12-22 11:22:56 【问题描述】:

我正在开发一个列出事件的移动应用程序项目。正如我在标题中提到的,我在我的项目中使用离子电容器。我做了很多研究,但我找不到任何可以访问 iosandroid 日历应用程序的插件。简而言之,我想要做的是在单击应用程序上的按钮时将该事件保存在手机的日历上。如果有人对此问题有任何想法或以前使用离子电容器做过这件事并且可以提供帮助,我会很感激的。谢谢!

【问题讨论】:

ionicframework.com/docs/native/calendar 实际上,我之前尝试过这个,但没有使用电容器 3x,但不知何故现在它可以工作了。谢谢你的建议 【参考方案1】:

我将分享我的经验,虽然我也是这个话题的新手。

我已经从科尔多瓦迁移到电容器,到目前为止,我无法再次发生这种情况(将事件添加到设备日历)。 @NajamUsSaqib 在文档中建议的插件在这种情况下不起作用,至少对我来说不起作用。

我为绕过这个问题所做的是用我的后端 java 创建一个 ICS,并使用这个 ICS 向用户发送邮件。为了触发这个,我添加了一个分享功能,可以将它发送给他想要的任何人(如下图所示)。在日历事件本身中,他可以向自己发送通知以使其更容易。

话虽如此,您必须注意发送邀请的类型。

Gmail、Office 365 和 Outlook 可以将事件直接从邮件本身添加到日历中,有一个自动生成的链接,但对于其他日历,用户必须下载 ICS 本身然后添加它.

对于 APP 来说,这不是一个简洁的解决方案,但到目前为止,这对我来说是最好的解决方案。

有关ICS的更多信息以及如何发送电子邮件的链接,如果您有兴趣,可以查看this post at litmus,我认为写得很好。

祝你好运

【讨论】:

我使用的是 3x 电容器,然后我升级到 3x,但随之而来的是很多配置错误。所以我决定开始清洁电容器 3x 并将我的所有代码迁移到该项目,然后所有错误都消失了。我认为升级电容器或将您的项目 Cordova 迁移到电容器仍然很难。【参考方案2】:

在 Ionic >= 5 和 Capacitor 3 上,您需要像这样在 app.module.ts 中导入日历:

import Calendar from '@ionic-native/calendar/ngx';

而不是像 @ionic-native/calendar 的文档中写的那样

之后,您可以将日历添加到您的 app.module.ts 提供程序中,并将日历注入任何 *.ts 文件中,您需要再次从 @ionic-native/calendar/ngx 导入它。

【讨论】:

以上是关于如何使用离子电容器将事件添加到移动设备的日历的主要内容,如果未能解决你的问题,请参考以下文章

Thunderbird:如何访问日历?

如何在真实设备中使用离子运行移动应用程序

向 Google 日历移动应用添加 ics 提要?

如何在 Android-studio 或移动设备上运行 ionic-capacitor 应用程序?

设USB 可移动存储设备设为只读的方法

使用此命令在移动设备中运行离子应用程序时出错(离子科尔多瓦运行安卓)