2010-08-25 121 views
0

我閱讀有關如何進行呼叫程序在iPhone上的一些參考,讓我把這個在我的代碼:撥打號碼

UIApplication *app = [UIApplication sharedApplication]; 
NSString *urlString = [NSString stringWithFormat:@"tel:0225225657"]; 
NSURL *url = [NSURL URLWithString:urlString]; 
[app openURL:url]; 

是正確的? 如果是,我怎麼能知道我的應用程序已經撥打了這個號碼,而我在模擬器中運行這個?

+0

你試過了嗎?這似乎是可以輕鬆測試的東西... – 2010-08-25 05:37:25

+0

是的,我試過了..但沒有發生 – 2010-08-25 05:38:04

+0

代碼是否被執行?嘗試添加一個斷點或NSLog。 – 2010-08-25 05:58:38

回答

2

您的代碼正在工作。你不能在模擬器中使用它。我的推理是這樣的:

UIApplication *app = [UIApplication sharedApplication]; 
NSString *urlString = [NSString stringWithFormat:@"http://www.google.com"]; 
NSURL *url = [NSURL URLWithString:urlString]; 
[app openURL:url]; 

這是你的代碼,但與http://www.google.com,而不是您的電話URL。它打開Safari並轉到Google。只需在設備上測試一下它就可以工作。

+0

thanx傢伙,它工作正常,很好的解決方案。:) 我還有一個問題,當我撥號時,這是否會自動關閉我的應用程序,就像我連接到谷歌時一樣。 – 2010-08-25 06:47:20

+0

@Imam:如果您還有其他問題,您應該在Stack OVerflow上添加一個新問題。 – Felixyz 2010-08-25 07:05:12

0

難道不應該是:

NSString *urlString = [NSString stringWithFormat:@"tel://0225225657"]; 

+0

這兩個工作都很好,iirc。 – 2010-08-25 06:14:51

+0

我認爲這是沒有什麼不同,因爲使用//或沒有,, 只是因爲我使用模擬器,所以我看不到我的應用程序撥號該號碼.. thnx爲答案傢伙:) :) – 2010-08-25 06:50:49