When run, it requests your permission twice, once each to access the Calendars then Reminders. If both items are in the plist file it works fine. But, if you remove the seemingly superfluous Reminders access permission the example doesn’t access any calendar data.
Why is the Reminder privilege necessary to access the Calendars? Is there a workaround so the user is not bothered with two requests?
I just built the MBS Calendar List and ran it, and it also showed two requests, one for Calendar and one for Reminders, so it is the same for both debug and build versions.
I have also noticed that if you reverse the order of the permissions in the plist file (ie Reminder before Calendar) that the Calendar request also fails!
I have tried running the Mac64bit>EventKit>EventKit example both in debug and as a built app and clicking the Request Access button never changes the buttons from grey, nor does is display the requesting privilege dialog windows. Also the plist items inside the info.plist file don’t show up inside the built app.
The example’s note suggests I need the following MBS Plugins:
MBS Xojo Cocoa Plugin.xojo_plugin
MBS Xojo CocoaBase Plugin.xojo_plugin
MBS Xojo Lion Plugin.xojo_plugin
MBS Xojo Mac64bit Plugin.xojo_plugin
MBS Xojo Main Plugin.xojo_plugin
MBS Xojo SnowLeopard Plugin.xojo_plugin
which I do except these no longer exist:
CocoaBase, Lion and SnowLeopard
It seems EventKit needs the info.plist to be the same as that in the Calendar List example ie it needs both Calendars and Reminders privilege.
But the good thing is that you can extract the calendar data with only the Calendar privilege window request appearing, not both Calendars and Reminders.