iOS 尚不支持跨商店副本 EKEvent



我在Xcode 9,iOS11上保存EKEvent时收到此NSInternalInconsistencyException错误。

do {
     try eventStore.saveEvent(newEvent, span: .ThisEvent, commit: true)        
   } catch {
   }

错误:

致命异常:NSInternalInconsistencyException iOS 不支持 跨商店副本尚未。

每当将任何值分配给其他对象时,都意味着将一个值复制到另一个值,因此有时发送异常。

就我而言:

if(orginalEvent.structuredLocation != nil){
            newEvent.structuredLocation = orginalEvent.structuredLocation
        }

因此,我已替换为以下内容:

if(orginalEvent.structuredLocation != nil){
            if orginalEvent.structuredLocation!.title.characters.count > 0{
                let location = EKStructuredLocation(title: orginalEvent.structuredLocation!.title)
                if(orginalEvent.structuredLocation?.geoLocation != nil){
                    location.geoLocation = CLLocation(latitude: (orginalEvent.structuredLocation?.geoLocation?.coordinate.latitude)!, longitude:  (orginalEvent.structuredLocation?.geoLocation?.coordinate.longitude)!)
                }
                newEvent.structuredLocation = location
            }
        }

所以,它现在正在工作。

不要创建和使用新的 EKEventStore()。只需使用现有的EKEventStore实例。

相关内容

  • 没有找到相关文章

最新更新