现在有应用A和应用B两个应用,其中应用B希望可以打开应用A,传递一定的参数给A,实现互动。

第一步:应用A在info中的URL Types 新建一项,填写对应的identifier和schemes,其中identifier对应应用的Bundle Identifier,schemes是其他应用打开本应用的域名。如下图所示:

第二步:在应用B的info中添加LSApplicationQueriesSchemes,在array中填写应用A的schemes,如下图所示:

第三步:在应用B中添加打开应用A的代码

  if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"platformA://"]]) {NSLog(@"install--");[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"platformA://?token=123abct"]];}else{NSLog(@"no---");}

第四步:在应用A的appDelegate中添加监控本应用被调用的delegate方法。

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)urlsourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{NSLog(@"Calling Application Bundle ID: %@", sourceApplication);NSLog(@"URL scheme:%@", [url scheme]);NSLog(@"URL query: %@", [url query]);return YES;
}
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options{NSLog(@"url: %@", url);NSLog(@"options :%@", options);return YES;}

其中由于方法1在iOS9以上被废除,所以需要对实际版本最好适配。

完成以上四步,即可实现应用B打开应用A、并传递参数的功能:


应用A接收到参数后,通过对参数的分析即可实现需要的功能。


以上内容为iOS9.0后,APP之间数据传递的用法,但由于URL Schemes的变动,所以必须在主动调用一方APP中维护LSApplicationQueriesSchemes白名单。
iOS9.0后URL schemes变动

iOS 打开第三方应用相关推荐

  1. ionic4 ios打开appstore 跳转第三方app

    ionic4 打开appstore 跳转第三方app 1. 需要用到的插件 (1)检测 APP 是否安装的插件 ionic cordova plugin add cordova-plugin-appa ...

  2. iOS 微信打开第三方应用(微信跳转第三方app)(Universal Links)

    iOS应用可以使用 URL Schemes 进行应用间的跳转或实现网页打开应用的功能,这种跳转是协议跳转. 要应用间能跳转就要遵循URL Schemes协议. 要网页跳转应用网页就要遵循URL Sch ...

  3. CocoaPods管理iOS的第三方类库

    2019独角兽企业重金招聘Python工程师标准>>> 使用CocoaPods管理iOS的第三方类库 OCT 15TH, 2012 iOS第三方类库的管理是一个很麻烦的事,项目信赖的 ...

  4. Android 中 QQ 和 微信打开第三方应用

    获取当前浏览器 可以用 navigation.userAgent 来区分当前的运行环境(当前测试手机:vivo x20) QQ(Android) Mozilla/5.0 (Linux; Android ...

  5. uni-app 打开第三方程序

    我们在开发 App 应用中,经常会遇到打开第三方程序的场景,在 uni-app 中我们应该如何做?相信不少刚接触的同学都会有此疑问.其实在 uni-app 中实现这个功能是非常简单的. 我们使用 5+ ...

  6. uni-app 实现打开第三方app

    uni-app 实现打开第三方app manifest.json -> plus -> distribute -> apple 节点下,添加 urlschemewhitelist.对 ...

  7. Android中WebView,打开第三方应用的问题

    可以通过网页打开第三方应用,这个iOS和Android都可以做到,通过自定义的schema.说这个的网上有一大堆,这里就不赘述了. 比如,乐视手机网站,有app专享片源,你使用UC浏览器打开他的网页, ...

  8. PodfileKit将github上常见的iOS(Swift)第三方框架进行了汇总,并且将框架进行了分类,为用户管理第三方框架提供了方便。

    PodfileKit ======================== Easy Podfile ! PodfileKit将github上常见的iOS(Swift)第三方框架进行了汇总,并且将框架进行 ...

  9. iOS QQ第三方登实现

    iOS QQ第三方登实现 标签: iOSqqsdk第三方登陆 2015-06-09 13:40 26692人阅读 评论(7) 收藏 举报  分类: iOS(120)  版权声明:本文为博主原创文章,未 ...

最新文章

  1. B - The Suspects POJ - 1611
  2. Cell:视觉错觉运动刺激的探索:基于EEG的实用辅助系统的脑机接口
  3. AM335x(TQ335x)学习笔记——使用dtb方式启动内核
  4. IOS用户界面的新视觉比例
  5. 数据库的使用你可能忽略了这些 (续)
  6. DRDS SQL 审计与分析——全面洞察 SQL 之利器
  7. TOP命令及参数解析
  8. 在变薄变厚的周而复始中前进的信息
  9. win7中安装redis
  10. ORA-27101: shared memory realm does not exist 错误的处理(ORA-01034 - Oracle not available )
  11. 【python】编程语言入门经典100例--21
  12. linux桌面lxde 安装_Ubuntu下安装LXDE桌面+noVNC直接WEB管理
  13. 西密歇根大学计算机科学专业排名,西密歇根大学计算机工程硕士排名第86(2020年TFE Times排名)...
  14. 水生植物拉丁文及缩写
  15. 计算机电源 4pin,用电脑电源4PIN接口做的2mm插头插座,省钱方便~
  16. 安卓面试中高级安卓开发工程师总结之——如何写一份让HR主动邀请你面试的简历
  17. vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in v-on handler (Promise/async): “Error: 失败“found in
  18. 塑胶模具设计-双色注塑模具设计36条经典经验分享
  19. iSlide(PPT插件) V3.4.5
  20. 请教switch内部的变量定义问题?

热门文章

  1. Maven filter 导致打包以后的excel文件损坏的问题
  2. 消息队列 | java简单实现
  3. C++智能指针入门之unique_ptr
  4. 空间分析建模目的_房产测绘与二三维一体化建模研究——以连云港市为例
  5. Java代码实现点赞功能
  6. 多进程爬取补天的厂商
  7. fastapi服务部署
  8. hive 修改cluster by算法_疯狂Hive之DML操作(四)
  9. nyoj 1273 宣传墙
  10. OSPF协议原理及配置4-邻接关系的建立和LSDB同步