zoukankan      html  css  js  c++  java
  • iOS中如何呼出另一个应用

    我们经常会遇到在一个应用里面呼出另一个应用的需求,比如在文档里面点击地址,调用safari来打开网页;比如在文件浏览器里面点击某种文件,自动激活一个应用来打开文件。

            iOS里面对于这样的需求使用URL来实现,把其他的应用看成一种资源,本质上就是调用系统资源。

            我们有两个应用App1和App2,在App2里面呼出App1,那么首先要配置App1,让系统认识App1的URL,这个就是配置info.plist文件的某些项,在Xcode里面就是配置一些选项,在Xcode4.6.2里面的样子如下图:

            

            这样就设置好了相关项,Identifier需要保持每个应用不同,所以推荐采用逆向域名,URL Schemes就是呼起这个应用的URL的开头。

            在App1的设置到这里就可以了,App2里面需要呼出App1时,代码也很简单:       

    1. NSURL *url = [NSURL URLWithString:@"myapp://"];  
    2.   
    3. if ([[UIApplication sharedApplication] canOpenURL:url]) {  
    4.     NSLog(@"can open %@", url);  
    5.     [[UIApplication sharedApplication] openURL:url];  
    6. }  
     

            URL必须myapp://起头,后面可以跟上一些内容,如果仅仅要呼出应用,那么仅写这个头也可以了。

            到这里,我们已经实现了在App2内呼出App1。在iOS4.2的系统之后,这样的一个调用会在App1里面调用-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id) annotation这样一个方法。

  • 相关阅读:
    巧妙使用df和du查看文件和目录的内存占用
    简谈
    SELECT语句的常用方法
    MySQL的安装和基本操作
    数据库 --- 索引
    数据库 --- Group by的使用心得
    数据库面试题 --- 谈谈你对视图的理解
    蚁群算法matlab源码
    职场人每天早晨做一个动作轻松提升工作效率
    职场新人请教问题一定不能犯的两个错误
  • 原文地址:https://www.cnblogs.com/DMDD/p/4599373.html
Copyright © 2011-2022 走看看