나는 iOS 6과 호환되도록 노력하는 보편적 인 iOS 응용 프로그램이 있습니다. Cordova/Phonegap 프레임 워크를 사용하여 내 응용 프로그램이 HTML, CSS 및 JS이기 때문에 사용하고 있습니다. 나는 iOS 6 이전에 잘 작동하는 github에서 사용할 수있는 Cordova 용 calenderPlugin을 사용하고 있습니다. 여기에서 시작하는 부분은 입니다. Apple은 iOS 6 이상에서 캘린더 및 미리 알림 작업을 수행하기 전에 사용자의 허가를 받아야한다고 덧붙였습니다. . 즉 여기에 물론 샘플 코드,
EKEventStore, iOS 6 용 EventKit.Framework가 필요합니까?
EKEventStore *eventStore = [[EKEventStore alloc] init];
if([self checkIsDeviceVersionHigherThanRequiredVersion:@"6.0"]) {
[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (granted){
//---- codes here when user allow your app to access theirs' calendar.
}else
{
//----- codes here when user NOT allow your app to access the calendar.
}
:
:
}];
}
//**********************************************************************************
// Below is a block for checking is current ios version higher than required version.
//**********************************************************************************
- (BOOL)checkIsDeviceVersionHigherThanRequiredVersion:(NSString *)requiredVersion
{
NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
if ([currSysVer compare:requiredVersion options:NSNumericSearch] != NSOrderedAscending)
{
return YES;
}
return NO;
}
이를 위해 나는 EventKit.Framework 및 EventKitUI.Framework을 추가했습니다. 이제 문제는 iOS 6 개발을위한 입니다. iOS6 SDK와 함께 제공되는 xCode 4.5를 다운로드하여 설치했습니다.
xCode는이 메소드 requestAccessToEntityType을 찾지 못하고 상수 EKEntityTypeEvent를 사용할 수 없습니다.
iOS 6 용 EventKit.Framework가 보이지 않습니다. ?? !! 하지만 어떻게? iOS 용 SDK와 함께 제공되는 xCode 4.5가 있습니다. 제안 사항은 무엇입니까?
내 기지 SDK가 이미 최신 IOS (6.0)로 설정되어 있습니다. EventKit.framework를 사용 해본 적이 있습니까? 내 프레임 워크의 EKEventStore 클래스에는 -requestAccessToEntityType 메서드가 포함되어 있지 않기 때문에 iOS 6에 별도의 새 EventKit.framework가 있어야합니다. 어디에서 가져올 수 있습니까? 내 시스템을 탐색하고이 프레임 워크를 추가 한 iPhoneOS5.0.sdk 폴더 만 사용할 수 있습니다. –