6

IOS 7 のデフォルト カレンダーにイベントを追加するアプリを作成しようとしています。最初にフレームワークを追加しました: EventKit.Framework を .m にインポートしました。

これは私のコードです:

    - (void)AddEventToCalendar
{

    EKEventStore *eventStore = [[EKEventStore alloc] init];

    EKEvent *event = [EKEvent eventWithEventStore:eventStore];

    // title of the event
    event.title = @"Event";

    // star tomorrow
    event.startDate = [[NSDate date] dateByAddingTimeInterval:86400]; 

    // duration = 1 h
    event.endDate = [[NSDate date] dateByAddingTimeInterval:90000]; 

    // set the calendar of the event. - here default calendar
    [event setCalendar:[eventStore defaultCalendarForNewEvents]];

    // store the event
    NSError *err;
    [eventStore saveEvent:event span:EKSpanThisEvent error:&err];
}

しかし、iPhoneでこれを実行すると、このエラーが発生します

エラー ドメイン = EKCADErrorDomain コード = 1013 「操作を完了できませんでした。(EKCADErrorDomain エラー 1013。)」

私に何ができるか知っていますか?

4

2 に答える 2

4

まず、EventStore を初期化してから、次の方法でユーザーの Calendar データベースを使用するためのアクセスを要求する必要があります。

[yourEventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
    if(granted) {
        // create/edit your event here
}];

アップルのドキュメントを参照してください

それが役に立てば幸い。

于 2014-02-27T16:15:51.073 に答える