I just started building a service with subscribed calendars. This is the behavior I noticed:
When I subscribe one calendar, sometimes this calendar syncs
When I subscribe a second calendar, the first calendar syncs consistently and the second calendar sometimes syncs
When I subscribe a third calendar, the first two calendars sync consistently, but the third calendar does not sync (neither initially nor on refetch)
When I subscribe a fourth calendar, the first three calendars sync consistently, but the fourth calendar does not sync (neither initially nor on refetch)
Conclusion: It looks like there is some kind of off by one bug in the iOS Calendar sync logic. iOS syncs the first n-1 calendars, but not the nth subscribed calendar. The workaround is to add an extra dummy calendar subscription after the subscriptions you care about, but I can't ask this of my intended users. How do we escalate this to Apple?
Other notes:
By "sync consistently", I mean that I can watch requests come in for the calendar on the service I am building each time I drag down on the Calendars list to force a manual refetch
I am hosting the service on a local machine right now and I'm not using SSL/https. I have another service that hosts calendars using https, and it has never had issues with syncing as far as I know - but that service only ever syncs one calendar to the iOS device. It was the last sync'd calendar in the list for more than a year without issues.
I am adding the subscriptions to my iCloud account
iOS 16.6.1
Post
Replies
Boosts
Views
Activity
I fixed the off by one issue I described above by adding // to my webcal url's. The off by one behavior was seen with url's like this:
webcal:192.168.1.182:8085/wakaan23-aura
webcal:192.168.1.182:8085/wakaan23-halo
This caused the "Subscribed to" field in the Subscription Details page to show up as "http:192.168.1.182:8085/wakaan23-aura".
After adding //, my webcal url's look like this and all subscribed calendars are requested consistently:
webcal://192.168.1.182:8085/wakaan23-aura
webcal://192.168.1.182:8085/wakaan23-halo
Now the "Subscribed to" field in the Subscription Details page shows up as "http://192.168.1.182:8085/wakaan23-aura".
Note to Apple: I suspect the off by one and the lack of // subscription url are related.