繁体   English   中英

System.MemberAccessException:无法创建UserNotifications.UNNotificationTrigger的实例,因为它是一个抽象类

[英]System.MemberAccessException: Cannot create an instance of UserNotifications.UNNotificationTrigger because it is an abstract class

我正在使用最新的通知框架UNUserNotificationCenter安排本地通知。

我正在共享一些代码片段,其中提到了触发器/访问触发器。 请勿顺序阅读。 这只是我阅读或修改触发器的代码片段

var trigger = UNCalendarNotificationTrigger.CreateTrigger(notification.ScheduledTime.DateTimeToNSDateComponents(),false);

trigger.DateComponents.Hour = trigger.DateComponents.Hour + 7;

var触发器=(UNCalendarNotificationTrigger)(notification.Trigger);

该方法没有任何编译错误,通知也起作用。 过去几个月以来,我们在应用商店中都有此代码。 迟到了,我们看到下面的消息崩溃了。 我没有在代码中引用UNNotificationTrigger。 顺便说一句,这是xamarin IOS应用程序。

System.MemberAccessException:无法创建UserNotifications.UNNotificationTrigger的实例,因为它是一个抽象类

这是我们正在寻求解决的Xamarin.iOS中的问题。

发生的情况是trigger在某个点消失或被收集,然后重新浮出水面,并且重新铺装不知道为此实际隐藏的具体实现,因此您得到了上面的消息。

目前最好的解决方法是在托管代码中保持指向trigger的指针有效,从而确保永远不会触发重铺表面。

我们在这里跟踪:

https://github.com/xamarin/xamarin-macios/issues/3935#issuecomment-381200652

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM