订阅iOS 4.0中的WebCal URL

时间:2010-06-16 08:12:21

标签: iphone events eventkit

在我的iPhone应用程序中,我有这个按钮,在UIWebView中打开一个webcal:// URL,如下所示:

#define kHostName @"webcal://www.markthisdate.com/kalender/World_Cup_Football_2010_Match_Schedule_10251.ics"

    - (IBAction)putInCalendar:(id)sender{
     NSURL *url = NULL;
     url = [[NSURL alloc] initWithString:kHostName];
     NSURLRequest *request = [[NSURLRequest alloc] initWithURL: url];
     [webView loadRequest: request];
     [request release];
     [url release];
    }

在iOS 3.x中,这会触发一系列对话框“订阅日历......”等,类似于在Mobile Safari中打开相同URL时会发生的情况:相关事件被添加为订阅iPhone的日历。

不知何故,在iOS 4.0中,虽然在iOS 4.0中的Mobile Safari中打开URL,但在我的应用程序中无法正常工作。

任何人都可以向我解释为什么这不起作用,但更好的是:适用于此功能的iOS 4.x方法是什么。

我看了一下已添加到4.0的新事件工具包,因为这似乎是在处理这些事情;然而,关于Event Kit的文档非常少,而且我无法使用Event Kit找到任何示例项目。

2 个答案:

答案 0 :(得分:1)

Apple已经承认这是一个错误,我已经提交了这样的错误。目前没有解决方法......

答案 1 :(得分:0)

只需输入此代码并检查

即可
#define kHostName @"webcal://www.markthisdate.com/kalender/World_Cup_Football_2010_Match_Schedule_10251.ics"

[[UIApplication sharedApplication]openUrl:[NSUrl urlWithString:[NSString stringWithFormat:@"%@",KHostName];