Comments (9)
Since the PR above is somehow stuck, I did try to resolve this for myself and was able to do so with a bit of effort.
The main issue is, that the iOS-SDK bundled with Xamarin only supports the iOS 16 bindings and does not contain the ones from 17. Unfortunately, Apple decided to deprecaterequestAccessToEntityType
of EKEventStore
permission requests and make them fail at the same time, instead of adding a fallback implementation, that would use requestFullAccessToEventsWithCompletion
under the hood.
Anyway, first approach was to simply call the new requestFullAccessToEventsWithCompletion
with Obj-c message send via Selector
directly from C#, but that failed, because I was not able to provide the parameter for the callback correctly.
But, creating a small static (obj-c) lib, which wraps the missing calls to EKEventStore
+ creating the bindings for C#, just works fine. Remember to build a fat lib, in order to also support iOS simulator.
here you go → https://github.com/gering/EventKitPermissionsWrapper
Use make
to build the static lib
from essentials.
Xamarin.Forms too. Latest Version of all SDKs and Frameworks. Calendar Access is very important
from essentials.
I wanted to reach out to let you know that I'm still encountering the same challenge with the iOS 17 Calendar permissions. Despite ensuring the necessary configurations and code adjustments as discussed previously, the permission prompts for Calendar.Write or Calendar.Read are still not displaying as expected
from essentials.
Xamarin form App, just upgraded to iOS 17, Calendar permission no longer working, but other permission such as contact write still working, can any one have a clue and please advise, thanks lot
from essentials.
@john26l In dotnet 8 you can use the solution of Plugin.Maui.CaledarStore
https://github.com/jfversluis/Plugin.Maui.CalendarStore/pull/46/files#
from essentials.
Is there no solution for Xamarin.Forms with .Net Standard 2.0 ??
from essentials.
The solution could be along the same lines as the link posted above. I'll see what I can do to also add that to Xamarin.Essentials.
from essentials.
Hi Gerald, good news, and better, if you (or someone else) could it ASAP, or a workaround with Dependency injection?
I need this very urgent.
Thanks
from essentials.
Thank you @gering! Yeah I was wondering about that. I do see the bindings come up on my machine, but I guess that might be some weird mixup between the .NET MAUI and Xamarin bits, because indeed there is Xcode 15 support but no new APIs so I guess we won't be able to implement this in Xamarin.Essentials anymore.
Thank you for this workaround!
Closing this one as we can't make this work on the Xamarin side because while Xcode 15 is supported for Xamarin, no new APIs have been added. Only the ability to build against Xcode 15 and prolong the Xamarin lifespan a little.
If you really need this, use the workaround above or migrate to .NET MAUI.
from essentials.
Related Issues (20)
- [Bug] TextToSpeech on Android overrides system set speech rate with value 1.0 HOT 2
- [Bug] Xamarin.Essentials Share not working on iOS HOT 2
- [Bug] [Android] [Regression] 1.8.0 Android assembly doesn't appear to contain Xamarin.Essentials.Platform HOT 3
- [Bug] Storage permission request not working
- [Bug][Android] Picking photo from Photos app leads to app crash unless we explicitly request StorageRead permissions on Android 9 HOT 4
- Error with Android Xamarin.Essentials 1.8.0 HOT 4
- Xamarin.Essentials 1.8.0 FilePicker gives NotImplementedInReferenceAssemblyException HOT 4
- [Bug] [Android] Android 14 MediaPicker shows modally over a blank view HOT 1
- support OpenHarmony HOT 1
- [Bug] WebAuthenticator with gogole auth 2.0 not returning back with the google auth 2.0 auth url
- [Bug] Version 1.8.0 breaks VersionTracking.Track() .. HOT 8
- [Bug] Essentials connectivity - Android 14 Crash - java.lang.SecurityException:One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts(API level 34)[Bug] HOT 7
- [Bug] WebAuthenticator/Android - user case scenario when WebAuthenticator opens external Chrome and does not return to app HOT 3
- [Bug] UWP Media Picker capture Photo doesn't work on windows 11 HOT 7
- [Bug] [Bug] Xamarin Essentials connectivity - Android 14 Crash - java.lang.SecurityException:One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts(API level 34) HOT 1
- Values provided to `WebAuthenticatorResult` as an `Uri` are not properly url decoded
- The type or namespace 'Platform' does not exist on iOS HOT 4
- Can't compile Xamarin.Essentials while targeting Android SDK v34 HOT 1
- OrientationSensor on iOS does not work when Location Services are off. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from essentials.