C# EKEventStore访问请求在iOS 10上崩溃

C# EKEventStore访问请求在iOS 10上崩溃,c#,ios,iphone,xamarin,ekeventstore,C#,Ios,Iphone,Xamarin,Ekeventstore,因此,我正在为移动设备开发一个Xamarin项目,我正在使用EKEventStore API创建事件,它在iOS 8和iOS 9上运行良好。 但在iOS 10上请求EKEVentStore访问权限时出现了问题 下面的代码在iOS 8和iOS 9上运行良好,但在iOS 10上崩溃,并且没有给出此错误的特定消息 苹果似乎已经改变了在iOS 10中收集这些权限的方式 有人有同样的问题,或者知道一些有助于解决它的事情 谢谢 EKEntityType type = EKEntityType.Event;

因此,我正在为移动设备开发一个Xamarin项目,我正在使用EKEventStore API创建事件,它在iOS 8和iOS 9上运行良好。 但在iOS 10上请求EKEVentStore访问权限时出现了问题

下面的代码在iOS 8和iOS 9上运行良好,但在iOS 10上崩溃,并且没有给出此错误的特定消息

苹果似乎已经改变了在iOS 10中收集这些权限的方式

有人有同样的问题,或者知道一些有助于解决它的事情

谢谢

EKEntityType type = EKEntityType.Event;
Store = new EKEventStore();
EKAuthorizationStatus status = EKEventStore.GetAuthorizationStatus(type);

if (status != EKAuthorizationStatus.Authorized)
{
    if (status == EKAuthorizationStatus.NotDetermined)
    {    
        Store.RequestAccess(type, (bool granted, NSError error) =>
        {
            //Crashes before entering here
        });

        return;
    }
    else
    {
        //Denied
        return;
    }
}
输出:

2016-09-30 17:16:25.739 MyApp[3156:115989] critical:    Native stacktrace:
2016-09-30 17:16:25.740 MyApp[3156:115989] critical:   0   libmonosgen-2.0.dylib               0x0524e64d mono_handle_native_sigsegv + 317
2016-09-30 17:16:25.741 MyApp[3156:115989] critical:   1   libmonosgen-2.0.dylib               0x052a6321 sigabrt_signal_handler + 161
2016-09-30 17:16:25.741 MyApp[3156:115989] critical:   2   libsystem_platform.dylib            0x07205ebb _sigtramp + 43
2016-09-30 17:16:25.742 MyApp[3156:115989] critical:   3   ???                                 0xffffffff 0x0 + 4294967295
2016-09-30 17:16:25.742 MyApp[3156:115989] critical:   4   libsystem_kernel.dylib              0x071e28bc abort_with_payload + 38
2016-09-30 17:16:25.743 MyApp[3156:115989] critical:   5   TCC                                 0x003ab621 __CRASHING_DUE_TO_PRIVACY_VIOLATION__ + 236
2016-09-30 17:16:25.743 MyApp[3156:115989] critical:   6   TCC                                 0x003ab535 __CRASHING_DUE_TO_PRIVACY_VIOLATION__ + 0
2016-09-30 17:16:25.743 MyApp[3156:115989] critical:   7   TCC                                 0x003ae6b9 __tccd_send_block_invoke + 292
2016-09-30 17:16:25.744 MyApp[3156:115989] critical:   8   libxpc.dylib                        0x0718c79c _xpc_connection_reply_callout + 45
2016-09-30 17:16:25.745 MyApp[3156:115989] critical:   9   libxpc.dylib                        0x07183a97 _xpc_connection_call_reply + 32
2016-09-30 17:16:25.746 MyApp[3156:115989] critical:   10  libdispatch.dylib                   0x06ea36ef _dispatch_client_callout + 14
2016-09-30 17:16:25.746 MyApp[3156:115989] critical:   11  libdispatch.dylib                   0x06e88c60 _dispatch_queue_override_invoke + 777
2016-09-30 17:16:25.747 MyApp[3156:115989] critical:   12  libdispatch.dylib                   0x06e8a4bc _dispatch_root_queue_drain + 384
2016-09-30 17:16:25.748 MyApp[3156:115989] critical:   13  libdispatch.dylib                   0x06e8a2d4 _dispatch_worker_thread3 + 134
2016-09-30 17:16:25.748 MyApp[3156:115989] critical:   14  libsystem_pthread.dylib             0x07215d6e _pthread_wqthread + 1070
2016-09-30 17:16:25.749 MyApp[3156:115989] critical:   15  libsystem_pthread.dylib             0x0721591a start_wqthread + 34
2016-09-30 17:16:25.750 MyApp[3156:115989] critical: 
=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

对于需要在info.plist中添加正确密钥的事件,在本例中为
NSCalendarsUsageDescription
,其中该值是您为什么请求此类权限的简短说明。

希望这能解决您的问题,我也遇到了完全相同的问题(也是Xamarin),这就解决了问题。

对于事件,您需要在info.plist中添加正确的密钥,在本例中为
NSCalendarsUsageDescription
,其中的值是您为什么请求此类权限的简短描述。
希望这能解决你的问题,我有完全相同的问题(也是Xamarin),这解决了它