builttoroam / device_calendar

A cross platform plugin for modifying calendars on the user's device
https://pub.dev/packages/device_calendar
BSD 3-Clause "New" or "Revised" License
270 stars 271 forks source link

iOS 17 "Add Events Only" #526

Open everfinal88 opened 9 months ago

everfinal88 commented 9 months ago

Is your feature request related to a problem? Please describe. Some of the user actually set the calender permission on their own to "Add Events Only", since the plugin does not cater this permission, the calender add event function will not work.

Describe the solution you'd like It would be nice if we can handle the permission separately for "Full Access" and "Add Events Only".

Additional context image

Ding127 commented 7 months ago

Is there any update for this?

thomassth commented 3 months ago

Try the 4.3.3 prerelease?

achapkey commented 2 months ago

Does not work on 4.3.3-20240801 prerelease. Checked the source code: in the permission check method, not less than full acces is required:

    private func hasEventPermissions() -> Bool {
        let status = EKEventStore.authorizationStatus(for: .event)
        if #available(iOS 17, *) {
            return status == EKAuthorizationStatus.fullAccess
        } else {
            return status == EKAuthorizationStatus.authorized
        }
    }