TheAlmightyBob / Calendars

Cross-platform calendar API plugin for Xamarin and Windows
MIT License
101 stars 23 forks source link

Enhancement request: add support for url's #63

Closed wvdvegt closed 5 years ago

wvdvegt commented 6 years ago

Can you add support for (custom protocol type) url's in calendar events?

On android it needs adding CalendarContract.Events.InterfaceConsts.CustomAppPackage and CalendarContract.Events.InterfaceConsts.CustomAppUri to eventValues in AddOrUpdateEventAsync / GetEventById and similar in iOS/UWP.

FYI I have this running in a modified older version if you need example code.

TheAlmightyBob commented 5 years ago

@wvdvegt Thanks for the request, sorry for the delayed response.

There was a previous PR related to this, #31. I'm still open to the idea! At the time I didn't really understand the use case. It was suggested that "this field contains different value on different platforms," which made me wonder how it would be useful in a cross-platform abstraction.

(I'm also not entirely clear on the end-user experience... I've used a few different apps on iOS & Android that create/populate custom calendars as far as I'm aware none of them used this...)

wvdvegt commented 5 years ago

Hi I use it for an application to schedule events where the app need to be started (using a custom url scheme). App users need to run the app 3xper day at a personal yet predefined time. It's an alternative for scenarios like 1) a lotta work in either push notification or 2) having some service running in the background or 3) sending people sms messages with the link.

I altered the code of the 0.6 version to include this functionality (not that much work) but since some recent updates Android does not show these URL's separately anymore (no clue why). iOS & UWO still shows the URL's as separate fields.

However I managed to do to with the most recent 1.0 version as well by simply inserting the URL into the description of the event. This method is a workaround for Android and cross platform as well as long as the URL's adhere to a particular format, http:///path for Android and customprotocol://localhost/path for iOS (if my memory is correct), UWP was no issue.

But I was unable to get both Android/iOS to work with the same URL.

TheAlmightyBob commented 5 years ago

@wvdvegt Interesting. Thanks for the explanation. Based on what I'd read, I didn't think Android ever showed the URL (but admit I hadn't actually tried it). It sounds like there's not much this library can do to help support this cross-platform then...?