iOS 程序之间的互相调用

要想调用第三方的程序首先要知道第三方程序的 URL Schemes,否则就没法调了,app的URL Schemes到底是什么呢,请看下面
1。首先我们打开项目找到项目配置的info.plist文件如下图,点击右键选择添加一行

screen-capture.png

2。选择 “URL types“

screen-capture-1.png

3。展开“Item 1″我们可以看到 URL identifier这个key,填写它的值,原则上可以随便填,但是一般习惯使用
”com.yourcompany.yourapp“
screen-capture-2.png

4.再添加一行 “Item 1″.

screen-capture-3.png
5。选择 “URL Schemes”
screen-capture-4.png

6。输入一个名字比如myapp,那么你程序的URL scheme就是myapp以后你在其他程序中间调用的时候就直接使用代码:       [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"myapp://"]];
看到这个代码应该很熟悉了吧,呵呵,至此都搞定了

screen-capture-6.png

1.简单调用:

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 sharedApplicationcanOpenURL:url]) {

        [[UIApplication sharedApplicationopenURL: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;

}








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值