从一个应用程序挑到另一个应用程序


背景:假如有A,B两个程序(当然都得是你自己写的),想在A程序中判断B程序是否存在本机上,存在就启动他,启动的时候弹出一个对话框,对话框的内容是A程序带过去的。背景到此结束,下面是实现流程。

实现:

1.在B程序中打开info.plist这个文件新建一个key=URL types,然后在这个下面新建一个URL Schemes,然后下面的item0后面的值为“myapp”,这里的myapp自己随意,爱啥啥。这样别的程序就可以用这个myapp调用这个程序了

2.在B程序中的“AppDelegate.m”这个文件中假如下面这个方法。

[plain]  view plain copy
  1. - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL*)url   
  2. {  
  3.     // 处理传递过来的参数  
  4.     UIAlertView *alertView;  
  5.     NSString*text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  
  6.     alertView = [[UIAlertView alloc] initWithTitle:@"Text"  
  7.                                            message:text                              
  8.                                           delegate:nil  
  9.                                  cancelButtonTitle:@"OK"  
  10.                                  otherButtonTitles:nil];  
  11.     [alertView show];  
  12.     [alertView release];  
  13.     return YES;  
  14. }  

这个方法明白人一看就懂,你要是不懂还是先去看基础教程吧!这里不做过多解释。

这样B程序准备工作就做好了。接下来见证神奇的一刻

3.在A程序中在你想调用的地方执行下面代码就可以调用B程序了。

[plain]  view plain copy
  1. [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"myapp://沈阳斌子测试"]];  

亲测如果存在是可以正常启动的,如果不存在也不报错。

4.至此启动就没问题了,如果只是单一的要判断的话那么改一个地方也可以实现。

[plain]  view plain copy
  1. BOOL isCunZai=[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"myapp://志强原创"]];  
  2. if(isCunZai)  
  3. {  
  4. //存在  
  5. }  
  6. else  
  7. {  
  8. //不存在  
  9. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值