之前一直误解LSApplicationQueriesSchemes“白名单”的概念:如果App1想要打开App2,必须把App2的URL scheme添加到App1的“白名单”中才能打开,这样理解是错误的。

官方文档:

说的是,在iOS9后,如果想要使用canOpenURL方法检查是否可以打这个URL或可以处理该URL的的App,需要在info.plist里添加LSApplicationQueriesSchemes字段来预设url,否则是否安装都会返回NO。

所以“白名单”的意义是要检查当前设备上是否安装了其他App,而不是打开其他App必须添加“白名单”。

所以如果想要打开其他App,直接使用openURL即可。

微信、微博等分享时,必须配置“白名单”是因为SDK要检测是否安装了微信、微博。之前还好奇微信是如何做到动态添加白名单的。。。

1.网页唤醒APP:

假设我们有一个APP,名字叫做 “APP甲”,需要通过网页唤起 APP甲,我们首先需要在 APP甲的工程文件里配置参数 URL Types:

在 info.plist 里的 URL types 增加 APP甲 的URL scheme,

或者在工程的info里的 URL type 添加也是一样的:

至此,我们的 APP甲,已经设置了可以唤醒它的一个URL Scheme : jiaAPPURLScheme

然后网页可以通过把自己的跳转链接改为 URL scheme:// ,比如这个栗子

关于iOS“白名单”的理解相关推荐

  1. ios应用白名单打包

    ios应用白名单打包 开发者中心操作配置 登陆开发者中心 进入开发中心-->点击Certificates, IDs & Profiles 白名单列表 添加白名单 白名单文件列表 名单添加 ...

  2. 黄河e贷不在白名单啥意思_该客户不在白名单什么意思,“白名单”指什么?...

    网贷的要求不是不严,不是随便什么人都可以去申请,很多网贷平台在刚开始就设置了一道关口卡住,它采用邀请制开放入口,认为合适的可以进来在白名单行列中. 今天和小编一起来聊聊这个话题,该客户不在白名单什么意 ...

  3. iOS项目中的URL Schemes与白名单

    在项目中对接支付.分享等第三方框架的时候,经常会用到URL Scheme和白名单等的配置,一直都是照着文档直接配置,没有理解它的作用. 最近写分享的时候分享静态页面,后台问我要一个iOS协议,用于跳转 ...

  4. ios ionic3 跳转第三方地图 xcode加入白名单

    之前我有篇随笔讲的是ionic3应用内跳转第三方地图应用的方法 忘了记录在ios内是需要把你用到的第三方地图应用加入跳转URL白名单内的 第三个是高德地图 iosamap 第四个是百度地图 baidu ...

  5. iOS开发分享之“白名单”

    本文转自:http://www.2cto.com/kf/201602/489546.html WWDC 2015 Session 703: "Privacy and Your App ( 时 ...

  6. iOS 对https App内部的http请求进行白名单设置

    苹果从iOS9开始要求应用使用Https链接来对请求进行加密,来保证数据的安全.如果使用http请求将会报错,当然,如果你想继续使用http请求,有两种方式: 1.使用ASIHttpRequest来请 ...

  7. iOS开发笔记-QQ,微信白名单设置

    项目中接入分享,总要设置白名单,QQ,QQ空间,微信,新浪微博 转载于:https://www.cnblogs.com/bryant07/p/7676738.html

  8. ios 分享的白名单

    <key>LSApplicationQueriesSchemes</key><array> <!-- 微信 URL Scheme 白名单--> < ...

  9. 百度地图AK鉴权说明与白名单设置方法

    百度地图AK鉴权说明与白名单设置方法 问题 百度地图开放平台提供的ak分类说明 浏览器端 微信小程序 服务端 ios应用.Android应用: 问题排查 鉴权测试 问题 近期网站经常会提示未授权使用百 ...

最新文章

  1. mysql wait_timeout 8小时问题解决,tomcat数据源的配置
  2. 蚁群算法和简要matlab来源
  3. flutter-Text 以字符的方式截断
  4. Redis-学习笔记04【Jedis代码操作】
  5. Document Builder: 怎样根据document ID使用API获得document的所有数据
  6. 【OpenCV】扫描图像、查找表、计时
  7. DE28 Matrix Methods for Inhomogeneous Systems
  8. [2017BUAA软工]提问回顾
  9. Android中Intent传递Java对象的方法
  10. 未能监测到驱动人生服务器,驱动人生查询失败可能是DNS被劫持的锅!
  11. 一句话搞懂JavaSE、JavaEE和JavaME之间的区别
  12. 计算机中有哪些令人拍案叫绝的设计?
  13. 特征码、特征码的概念、特征码的作用、常见的特征码
  14. 关于ANSYS17的安装教程出现安装问题的解决方案
  15. 嵌入式微处理器的体系结构
  16. 数字图像处理 - Ch3 锐化(高通)空间滤波器
  17. Sky光遇云野光之翼在哪获得
  18. md语法语法_PHP –语法概述
  19. 云上故事 | “电”亮数字生活,阿里云混合云助力南方电网智能调度
  20. WebService测试工具介绍及下载

热门文章

  1. bmp灰度图像的c语言读,256级灰度BMP文件读写的源代码+c语言图像处理.doc
  2. WR703N路由器资料
  3. 自动布局 VFL 教程
  4. 你让稻船敬二玩洛克人他也瞎
  5. 二.海思Hi3516ev100视频处理子系统(VPSS)模块
  6. 什么是动态DNS(DDNS)?
  7. 2019年成云原生普及元年 未来或将“云原生一切”
  8. 记录如何将阿里云ECS主机以镜像方式迁移到线下机房vmware esxi主机
  9. Ruby alias 语句
  10. 并发(并行)、共享、虚拟、异步