iOS10之前,我们进行判断手机是否装有应有并跳转代码一般是这么样的

if ([[UIApplication sharedApplication] canOpenURL:url]) {[[UIApplication sharedApplication] openURL:url];}else{[self p_goAdsPageWithWebsite:WOHAIBAO_DOWNLOAD_URL];// 跳转}

但是很不幸,经真机测试[[UIApplication sharedApplication] canOpenURL:url]在iOS10上失效了,
在iOS10上新出了一个api

- (void)openURL:(NSURL*)url options:(NSDictionary<NSString *, id> *)options completionHandler:(void (^ __nullable)(BOOL success))completion NS_AVAILABLE_IOS(10_0) NS_EXTENSION_UNAVAILABLE_IOS("");

文档解释是这样的

// Options are specified in the section below for openURL options. An empty options dictionary will result in the same
// behavior as the older openURL call, aside from the fact that this is asynchronous and calls the completion handler rather
// than returning a result.
// The completion handler is called on the main queue.

options这一块传递用来做什么暂时不知道,但是如果传空字典就跟以前openUrl作用一样,并且有一个在主线程的异步回调block

所以在iOS10上调用openUrl应该使用

if (isiOS10) {[[UIApplication sharedApplication] openURL:url options:@{UIApplicationOpenURLOptionsOpenInPlaceKey:@"1"} completionHandler:^(BOOL success) {// 回调if (!success) {[self p_goAdsPageWithWebsite:WOHAIBAO_DOWNLOAD_URL];}}];}else{if ([[UIApplication sharedApplication] canOpenURL:url]) {[[UIApplication sharedApplication] openURL:url];}else{[self p_goAdsPageWithWebsite:WOHAIBAO_DOWNLOAD_URL];}}

that’s all

iOS10 使用openURL打开其他应用相关推荐

  1. UNI-APP,plus.runtime.openURL打开手机自带浏览器,出现“下载地址不可用,创建任务失败”的Bug

    在UNI-APP中,有时候需要打开手机自带的浏览器,下载更新软件,通常使用 //#ifdef APP-PLUS plus.runtime.openURL(res.url); //#endif 但是,最 ...

  2. iOS 用内置浏览器Safari 打开网页

    iOS 开发的时候,我们需要打开某个网页,可以写一个web页面,也可直接使用浏览器打开网址 那么我们怎么样使用iOS 内置的浏览器打开网址呢? 如下: ios 10 之前使用 [[UIApplicat ...

  3. Qt打开Word、Excel和PPT总结

    (1)使用应用内嵌显示文件. 实现方式:利用QProcess类,启动第三方程序,获得窗口句柄后,显示到控件里面. 缺陷:启动第三方程序的时候,需要拿到程序的安装路径.每个电脑程序的安装路径不一样,打开 ...

  4. iOS开发-调用手机浏览器打开网址

    我们需要使用调用Safari浏览器打开网址,或者调用scheme跳转其他app,或者调用系统打电话.邮件.地图等. 在iOS 10之前需要使用: NSString *openURL = @" ...

  5. h5支付不能打开支付宝 ios_iOS 解决微信h5支付,支付宝h5支付无法直接返回APP的问题...

    由于公司的业务需要,为了节省申请开通微信支付的时间和人力,公司决定使用微信h5支付.这样即节省了时间,同时以后所有的APP都能使用h5支付,既方便又快捷. 但是真正做的时候问题来了,当你支付成功之后或 ...

  6. 如何使用Xcode7来调试iOS10设备

    iOS10发布了,再要发布版本必须要适配iOS10,开发者们又要更新Xcode了,真的是这样吗? "我不想更新Xcode""我的网速不好,更新要好长时间呀" 好 ...

  7. iOS 用内置浏览器Safari 打开网页

    iOS 开发的时候,我们需要打开某个网页,可以写一个web页面,也可直接使用浏览器打开网址 那么我们怎么样使用iOS 内置的浏览器打开网址呢? 如下: ios 10 之前使用 [[UIApplicat ...

  8. 如何在 iOS10 Safari 中跳转 [设置-通用-描述文件]

    今天研究了一下企业应用分发,网络上有很多文章讲如何利用一个 Web 页面进行 iOS 企业应用分发下载安装,这里就不再赘述:这篇文章主要针对的是企业应用安装后如何在 Safari 中引导用户跳转到 [ ...

  9. .url格式的文件用什么姿势打开

    1. .url格式文件有什么用? .url包含一个链接地址,双击文件,会打开浏览器并跳转到该链接地址指向的网页. 2. 怎样创建一个.url文件? 创建一个最简单的.url文件: 新建一个.txt文件 ...

最新文章

  1. Tensorflow 源码安装成功,导入报错 ImportError: cannot import name 'build_info'
  2. 各种编程语言功能综合简要介绍(C,C++,JAVA,PHP,PYTHON,易语言)
  3. nyoj985带通配符的数
  4. 10大申请攻略+套磁技巧助你完胜美研申请
  5. php 删除 r n,PHP去除换行符'/r/n'回车换行与PHP_EOL变量的使用
  6. 圆形比例分布图怎么做_解读宝山区2035总体规划:建设用地的比例在上海非中心城区中最高...
  7. mysql 内联函数_C++之内联函数
  8. 【实战】颠覆银行基础架构的区块链
  9. xp的guest访问
  10. 灵动标签内sql语句调用
  11. [bzoj4278][ONTAK2015]Tasowanie_后缀数组_贪心
  12. [系统安全] 十二.熊猫烧香病毒IDA和OD逆向分析(上)病毒初始化
  13. html中怎么设置一个籍贯选择,行政区、籍贯选择标签
  14. 如何选择SAP培训?
  15. Raspberry Pi树莓派分类和其相似产品介绍
  16. 实现正方形图片dct的c++代码(使用AXAT)
  17. 需要账号密码验证的代理ip使用
  18. java 怎样卸载一个类_java 类型卸载问题
  19. javaWeb基础一:JDBC (java操作数据库的技术)
  20. 计算机学院可以举办活动,计算机学院举办2019年家长开放日系列活动

热门文章

  1. 非科班AI小哥火了:他没有ML学位,却拿到DeepMind的offer
  2. ORA-00392: log 4 of thread 2 is being cleared, operation not allowed
  3. ‘tensorflow.python.training.experimental.mixed_precision‘ has no attribute ‘_register_wrapper_optimi
  4. 控制电机及应用课程简单总结
  5. 从blob协议的加密视频地址下载视频
  6. win10完整Tensorflow-GPU环境搭建教程-附CUDA+cuDNN安装过程
  7. R安装学习及包的管理
  8. 压力传感器中英文术语对照表
  9. Ubuntu 和 Debian 的关系
  10. Windows10自带键盘突然失灵