如何帮助用户在Android设备上订阅Google日历的外部日历?

时间:2012-04-04 21:10:13

标签: android calendar google-api google-calendar-api android-calendar

目前,我的应用可以帮助用户将单个活动添加到他们的Google日历中:

final Intent calendarIntent = new Intent(Intent.ACTION_EDIT)
        .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
        .setType("vnd.android.cursor.item/event")
        .putExtra("beginTime", startTime)
        .putExtra("endTime", startTime + 7200000L) // 2 hours
        .putExtra("title", name)
        .putExtra("description", description.toString())
        .putExtra("eventLocation", address);

// later
startActivity(calendarIntent);

但是,许多用户希望自动将所有活动添加到他们的Google日历中。我们的服务器团队制作了一个ICS供稿,人们可以subscribe to as an external Google calendar。但这涉及复制和粘贴URL,这对最终用户来说有点混乱。

在网络上,我们可以将人们链接到http://www.google.com/calendar/render?cid=OUR_ICS_URL形式的网址,他们可以相对轻松地从那里添加Feed。但是,当您在Android浏览器上访问此URL时,您会收到有关移动与桌面网站的各种奇怪的弹出窗口,甚至我们开发团队中的高级Android用户也无法弄清楚如何从那里添加日历。

我调查的另一件事是Google Calendar API,但似乎他们的calendar list insert method需要一个Google日历ID,而不是外部日历的网址。

那么,这里有什么好的解决方案吗?似乎应该有一种方法可以帮助我们的用户订阅他们的日历,而无需他们去他们的桌面并打开一个完整大小的Web浏览器。但是我没有尝试过任何结果。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

也许您可以使用AuthSub来验证您的用户,然后您就可以使用日历列表插入方法。我认为Zend framework就是这样做的。