App应用间通信的一个方法

App应用间通信

    如要实现项目A里点击一个Button,跳到项目B:

1. 项目B里info.plist设置:

 

2. 在项目B的Appdelegate里实现方法:

复制代码
/**
 * BProject AppDelegate
 */
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:url.scheme
                                                        message:url.description
                                                       delegate:nil
                                              cancelButtonTitle:@"OK"
                                              otherButtonTitles:url.query, url.host, nil];
    [alertView show];
    
    return YES;
}
复制代码

 

3. 项目A里Button的点击事件:

复制代码
- (IBAction)jumpToAnotherApp:(id)sender {
    
    NSString *urlString = @"BProject://www.CompanyName.BProject?SendSomeDataToBProject";
    NSURL *URL = [NSURL URLWithString:urlString];
    [[UIApplication sharedApplication] openURL:URL];
    
}
复制代码

 

4. 模拟器或真机上运行项目B,再运行项目A,点击Button,效果:

 

 

例如跳到淘宝应用:

NSString *urlString = @"taobao://";

 

查找想要通信的应用的URL Schemes:

用itools下载该应用的info.plist,比如想跳到当当网app,

 

打开当当网app的info.plist是:

在点击事件里实现

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"dangdang://"]];

或者    

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"dd://"]];

都可以跳转到当当网app。

 

若手机没安装要跳转的app, 比如想跳转到人人网App,但手机没安装这个软件,可以:

1). 从苹果网站 https://linkmaker.itunes.apple.com/us/?urlDesc= 先查找出人人网的AppStore链接,

https://itunes.apple.com/cn/app/ren-ren/id316709252?mt=8&uo=4

 

 

 

2). 点击事件中加入判断代码:

复制代码

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"renrenios://"]]) {

                [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"renrenios://"]];

            } else {

                [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://itunes.apple.com/cn/app/ren-ren/id316709252?mt=8&uo=4"]];

            }

复制代码

 

 

这样,大概可以完成应用之间的通信。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值