我刚从代码中添加了iphone日历上的一个事件:
EKEventStore *store=[[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (!granted) {
return ;
}
EKEvent *event=[EKEvent eventWithEventStore:store];
event.title=@"This is the event";
event.startDate=[NSDate date];
event.endDate =[event.startDate dateByAddingTimeInterval:60*60];
event.allDay=YES;
NSURL *url=[NSURL URLWithString:@"http://www.google.com"];
event.URL=url;
[event setCalendar:[store defaultCalendarForNewEvents]];
NSError *errr=nil;
[store saveEvent:event span:EKSpanThisEvent commit:YES error:&errr]; // NSLog(@"%@",errr); // NSLog(@"%@",event.eventIdentifier);
}];
我的活动已添加到默认日历中:
当您点击活动时,您将显示以下内容:
现在我想从上面的一个屏幕启动我的应用程序。
答案 0 :(得分:2)
要注册自己的URL方案,Apple提供了一个很好的文档: https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html#//apple_ref/doc/uid/TP40007072-CH7-SW50
要执行此操作,请转到xcode-Project文件并选择构建目标。 前往“信息”。在底部有一个“URL类型”的下拉列表。 标识符可以与您的包标识符匹配。该方案本身非常重要,在这里你输入一个,你将在以后使用。例如:“myCustomScheme”
现在将应用程序带到设备上并提供如下链接: myCustomScheme:// additionalURLWithcustomInformation / andParametersYouWantToUseLater = 1234
在AppDelegate中现在实现以下方法并处理事件:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
if ([[url scheme] isEqualToString:@"myCustomScheme"])
{
// Custom URL handling, for example for url parameters
}
return YES;
}