1。首先我们打开项目找到项目配置的info.plist文件如下图,点击右键选择添加一行
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture1.png)
2。选择 “URL types“
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture-1.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture-11.png)
3。展开“Item 1″我们可以看到 URL identifier这个key,填写它的值,原则上可以随便填,但是一般习惯使用
”com.yourcompany.yourapp“
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture-2.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture-21.png)
4.再添加一行 “Item 1″.
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture-3.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture-31.png)
5。选择 “URL Schemes”
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture-4.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture-4.png)
6。输入一个名字比如myapp,那么你程序的URL scheme就是myapp以后你在其他程序中间调用的时候就直接使用代码:
看到这个代码应该很熟悉了吧,呵呵,至此都搞定了
![IOS在当前程序中调用任意的第三方程序,类似调用短信,邮件,浏览器,地图,appstore,拨打电话的程序 screen-capture-6.png](http://iphonedevelopertips.com/wp-content/uploads/2008/12/screen-capture-6.png)
NSURL *url = [NSURL URLWithString:@"myapp://"];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
[[UIApplication sharedApplication] openURL:url];
}
2.如果需要传递参数
NSURL *url = [NSURL URLWithString:@"myapp://com.yourcompany.myapp?parameter=myview"];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
[[UIApplication sharedApplication] openURL:url];
}
并且在被调用的app中
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
if ([[url host] isEqualToString:@"com.yourcompany.myapp"])
{
/*
外部调用程序发来的数据为
myapp://com.yourcompany.myapp?parameter=myview
注册的URL Types :
URL Scheme ::myapp
URL identifier :: com.yourcompany.myapp
配置info.plist 文件
【url host】 : URL identifier
[url query]: ?后面的数据 里面可以是接口等等
*/
NSLog(@"------%@----%@",[url host],[url query]);
return YES;
}