2010-06-16 51 views
3

在我的iPhone應用程序,我有這個按鈕,打開一個WebCal中:在一個UIWebView // URL如下:訂閱一個WebCal的URL中的iOS 4.0

#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中打開網址確實可行。

任何人都可以向我解釋爲什麼這不起作用,但更好:什麼是適當的iOS 4.x方法來實現此功能。

我看了一下已添加到4.0中的新事件工具包,因爲這似乎是在處理這些事情;然而事件工具包的文檔相當微薄,而且我還沒有能夠使用Event Kit找到任何示例項目。

回答

1

這已被蘋果公認爲是一個錯誤,我已經提交過。目前尚無解決辦法....

+0

這並不工作。哪些版本不起作用?哦蘋果... – david 2011-07-21 09:56:48

0

只是把這個代碼,並在最新的版本再次檢查

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

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