2009-08-08 86 views
2

我正在關閉,其具有這行代碼的教程:iPhone模擬器在3.0不顯示錯誤,但顯示在2.0

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8004664411"]];

當程序在3.0框架編譯和該行的代碼運行,沒有任何反應。但是,如果該計劃是建立一個與2.0框架的代碼行導致一個彈出窗口顯示,上面寫着:

「不支持URL 沒有裝載這個URL: 電話:// 8004664411」

燦任何人都可以解釋爲什麼在3.0中沒有出現錯誤

回答

3

我不知道爲什麼你只看到2.0框架構建錯誤。當使用Xcode模擬器時,電話鏈路總是被忽略。

無論如何,在嘗試使用canOpenURL類方法調用電話號碼之前,讓應用程序檢查是否支持tel url方案是一種很好的做法;


NSString *zeURL = @"tel://8004664411"; 

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:zeURL]]) { 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:zeURL]]; 
} else { 
    //show own error message dialog 
} 
2

而且,從這裏非常最近的經驗來說,你會得到你的應用程序中,如果你不能正確處理其不支持tel://硬件App Store的審批流程拒絕。

我有一個按鈕,我放在那裏,iPod和模擬器不會崩潰,但他們什麼都不做。如果在不支持它的設備上運行,您應該檢測並移除該按鈕。

我想踢自己讓這個人過來。

+0

謝謝。我會忘記。 – Neo42 2009-08-24 12:59:48

相關問題