我想從iOS應用程序內部打開Google地圖應用程序。不能從另一個應用程序內啓動Google地圖應用程序
我使用這個代碼:
[[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
,但它不工作。誰能告訴我最新的問題?
我想從iOS應用程序內部打開Google地圖應用程序。不能從另一個應用程序內啓動Google地圖應用程序
我使用這個代碼:
[[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
,但它不工作。誰能告訴我最新的問題?
首先canOpenURL
將不會打開一個應用程序。它只是檢查應用程序是否可以打開應用程序。改用openURL
方法。
if([[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]])
{
[[UIApplication sharedApplication] openURL: [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
}
注:
對於使用URL方案打開第三方應用程序。它應該安裝在設備上。
canOpenURL:
返回應用程序是否可以打開一個給定的URL資源。
- (BOOL)canOpenURL:(NSURL *)url
參數
網址
A URL object that identifies a given resource. The URL’s scheme—possibly a custom scheme—identifies which application can
處理的URL。
返回值
NO,如果沒有應用程序,其將接受的URL;否則, 返回YES。
討論
這種方法可以保證,如果的OpenURL:被調用,另一個 應用程序將被啓動來處理它。它並不保證 完整的URL有效。
的OpenURL:
打開指定URL的資源。
- (BOOL)openURL:(NSURL *)url
參數
網址
An object representing a URL (Universal Resource Locator). UIKit supports the http:, https:, tel:, and mailto: schemes.
返回值
YES如果位於由URL資源被成功打開; 否則否。
討論
的URL可以定位在相同或其他應用程序的資源。如果 資源是另一個應用程序,則調用此方法可能會導致 呼叫應用程序退出,因此可以啓動另一個應用程序。
您可以調用canOpenURL:在調用此函數之前,驗證 是否可以處理它。
謝謝..很多.. – user2174560 2013-03-18 05:36:53
@ user2174560:隨着快樂:) – 2013-03-18 05:37:33
是在您的設備上安裝的應用程序? – 2013-03-18 05:24:14