ebarooni / capacitor-calendar

The Capacitor Calendar Plugin enables full calendar functionality on iOS and Android, with added reminder support for iOS devices.
https://capacitor-calendar.pages.dev
MIT License
12 stars 4 forks source link

Document other necessary permissions #61

Closed aparajita closed 2 weeks ago

aparajita commented 2 weeks ago

If createEventWithPrompt is called, there are a bunch of other permissions necessary on iOS. It would be nice if these were documented.

If you click on the Location field in the event sheet, these errors appear:

This app has attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an “NSLocationWhenInUseUsageDescription” key with a string value explaining to the user how the app uses this data

[NSExtension] Extension request contains input items but the extension point does not specify a set of allowed payload classes. The extension point's NSExtensionContext subclass must implement `+_allowedItemPayloadClasses`. This must return the set of allowed NSExtensionItem payload classes. In future, this request will fail with an error.

Then when you start typing it the field, the app crashes with this error:

This app has crashed because it attempted to access privacy-sensitive data without a usage description.  The app's Info.plist must contain an NSContactsUsageDescription key with a string value explaining to the user how the app uses this data.
ebarooni commented 2 weeks ago

@aparajita Im not able to reproduce this bug. Can you please tell me what are the steps to reproduce? Here is what I tried:

  1. Checkout main
  2. Build example app
  3. Start the app
  4. Tap on createEventWithPrompt
  5. Tap on location (im presented with a location sheet)
  6. I choose the location
  7. Save event

There are also no such logs in the debugger. Which iOS device and version are you testing on? I tested on iPhone 14 Pro with iOS 17.4.1.

During this test I did not event ask for read and write permissions for the calendar (even revoked the permissions from settings).

aparajita commented 2 weeks ago

Try a fresh iPhone 8 simulator running iOS 16.4.

aparajita commented 2 weeks ago

See this issue for info on how to get the app's location settings to appear in the simulator.

ebarooni commented 2 weeks ago

Try a fresh iPhone 8 simulator running iOS 16.4.

@aparajita Thanks I could reproduce it. Will adapt the documentation with priority.