我想从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