2016-02-22 2 views
2

Я хотел бы создать кнопку, которая позволит моим пользователям подписаться на ссылку Календаря. Но я хочу, чтобы это работало для Google Календари, а также для родных календарей Apple/iOS. Ссылки на подписки на Google Календари не работают надежно на устройствах iOS (по крайней мере, в моих первых тестах). Календарь Google будет синхронизироваться с календарями iCloud, но они обновляются ДЕЙСТВИТЕЛЬНО медленно (каждые 24 часа или около того). Это не страшно, но это тоже не здорово.Создание ссылки «Подписаться на Календарь» для работы в Календаре Google и календаре Apple

У кого-нибудь есть хорошее решение? Может быть, найти способ синхронизации Календаря Google с календарем iCloud, а затем предлагать две разные ссылки?

+0

В API нет указателей на «календарь подписки», который будет работать в календаре Apple/iOS. Я не могу придумать, как использовать API-интерфейс Calendar для взаимодействия с iCalendar без получения полного календаря и по отдельности скопировать его в iCalendar (и наоборот). Если вы собираетесь с этим маршрутом, вам нужно будет [получить Календарь] (https://developers.google.com/google-apps/calendar/v3/reference/calendars/get), вы хотите «синхронизировать» », [получить все события] (https://developers.google.com/google-apps/calendar/v3/reference/events/list) и скопировать его в iCalendar через API. – adjuremods

ответ

0

Я не верю, что есть способ решения одной ссылки. Вот две ссылки, которые позволяют вам подписаться на Календарь Google, используя Календарь Apple или Календарь Google.

Подписка на календарь Google с календарем Apple. Эта следующая ссылка спросит, хотите ли вы открыть приложение календаря на своем Mac, а затем разрешить подписку (включая выбор того, как часто вы хотите обновить календарь). Для устройств iOS вам нужно нажать и удерживать ссылку по какой-либо причине, затем диалоговое окно спрашивает, хотите ли вы открыть приложение календаря (я использовал более старый iPad, поэтому YYMV).

"webcal://calendar.google.com/calendar/ical/{YOUR_GCAL_ID}/public/basic.ics" 

Подписавшись в календарь Google с Google Calendar. Эта ссылка приведет вас к вашему календарю Google и спросит, хотите ли вы подписаться на него. Я также обнаружил, что с использованием устройства iOS, которое я использовал, мне нужно было нажать и удерживать ссылку и «Открыть в новой вкладке», чтобы она работала по какой-то причине.

"https://calendar.google.com/calendar/render?cid=https://calendar.google.com/calendar/ical/{YOUR_GCAL_ID}/public/basic.ics" 

Конечно, календарь должен быть установлен на публике для них работать (обмен внутри компании, скорее всего, позволит второй канал для работы с правильными настройками).