一,URL方案

URL方案有3个主要用途:根据设备上其他应用的存在与否调整逻辑,切换到其他应用以及响应打开你的应用的其他应用。你还可以通过URL方案从某个站点或是在基于Web的认证流程结束是打开应用。

1,实现自定义的URL方案。

2,感知其它应用的存在。

3,高级通信。

1)base64编码,专门用于将二进制数据表示为ASCII文本字符串。可以使用一个标准化的转换表格将二进制数据的每6位编码为一个字符。

2)要想创建图像数据字符串,需要使用之前介绍的3个步骤。序列化图片,使用base64对其进行编码,然后使用URL再次进行编码。

二,共享钥匙串

共享钥匙串是对企业来说特别有用,因为它会创建一块公共区域,共享同一Bundle Seed ID的所有应用都可以访问这块区域。通过这块共享空间,我们可以非常轻松地为一组相关应用实现单点登录认证系统。此外,在钥匙串中存储数据的应用会检测自身之前的安装,这样就可以通过重用之前提供的认证信息或是针对期望的用户调整用户界面来改善用户体验。

iOS钥匙串针对受保护的操作系统数据提供了单独的区域来实现安全存储。第三方应用也可以通过该存储来保存类似的受保护数据。要想保证安全性,钥匙串条目也可以通过该存储来保存类似的受保护数据。要想保证安全性,钥匙串条目应总是在加密之后保存在磁盘上和设备备份中。即便删除 应用,受保护的数据依然会留在钥匙串中,这样后面再次安装应用时就可以重用相同的信息了。同一开发者所开发的多个应用可以通过配置使用相同的加密密钥,这样每个应用就可以访问共享的钥匙串条目了。

1,企业SSO。

SSO常常被实现为一个端到端的认证框架,可以让用户通过一套共享的认证信息对多个应用进行认证。如果登录成功,那么SSO提供者通常会生成一个认证令牌,令牌会存储起来并用于对所有后续请求进行签名。

2,检测应用之前的安装。

参考资料:《iOS网络高级编程-iPhone和iPad的企业应用开发》

 
 

【读书笔记】iOS-网络-应用间通信的更多相关文章

  1. 【读书笔记】iOS网络-应用间通信

    一,URL方案 URL方案有3个主要用途:根据设备上其他应用的存在与否调整逻辑,切换到其他应用以及响应打开你的应用的其他应用.你还可以通过URL方案从某个站点或是在基于Web的认证流程结束是打开应用. ...

  2. 《android开发进阶从小工到专家》读书笔记--HTTP网络请求

    No1: 客户端与服务器的交互流程: 1)客户端执行网络请求,从URL中解析出服务器的主机名 2)将服务器的主机名转换成服务器的IP地址 3)将端口号从URL中解析出来 4)建立一条从客户端与Web服 ...

  3. 0038 Java学习笔记-多线程-传统线程间通信、Condition、阻塞队列、《疯狂Java讲义 第三版》进程间通信示例代码存在的一个问题

    调用同步锁的wait().notify().notifyAll()进行线程通信 看这个经典的存取款问题,要求两个线程存款,两个线程取款,账户里有余额的时候只能取款,没余额的时候只能存款,存取款金额相同 ...

  4. Java笔记(二十)……线程间通信

    概述 当需要多线程配合完成一项任务时,往往需要用到线程间通信,以确保任务的稳步快速运行 相关语句 wait():挂起线程,释放锁,相当于自动放弃了执行权限 notify():唤醒wait等待队列里的第 ...

  5. 读书笔记_python网络编程3(6)

    6.TLS/SSL 6.0. 传输层安全协议(TLS, Transport Layer Security)是如今web上应用最广泛的加密方法了,1999年成为互联网标准.前身是安全套接层(SSL, S ...

  6. 读书笔记_python网络编程3(5)

    5. 网络数据与网络错误 应该如何准备需要传输的数据? 应该如何对数据进行编码与格式化? Py程序需要提供哪些类型的错误? 5.1. 字节与字符串 PC与网卡都支持将字节作为通用传输单元.字节将8比特 ...

  7. 读书笔记_python网络编程3_(3)

    3.TCP:传输控制协议 第一个版本在1974年定义,建立在网际层协议(IP)提供的数据包传输技术之上.TCP使程序可以使用连续的数据流进行相互通信. 除非网络原因导致连接中断/冻结,TCP都能保证将 ...

  8. 读书笔记_python网络编程3_(2)

    2.UDP 2.0.数据包表示较短的信息,大小通常不会超过几千字节,在浏览器与服务器进行会话/电子邮件客户端与ISP的邮件服务器进行会话时,这些独立而小型的数据包是如何组成会话的呢? 2.0.1.IP ...

  9. 读书笔记_python网络编程3_(1)

    0.前言 代码目录: https://github.com/brandon-rhodes/fopnp/tree/m/py3 0.1.网络实验环境:理解客户端与服务器是如何通过网络进行通信的 每台机器通 ...

  10. [读书笔记]iOS 7 UI设计 对比度

    好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...

随机推荐

  1. ping端口是否开放(windows,macos,linux)

    windows中ping端口:tcping命令 1. tcping 非自带命令,首先安装tcping命令,也可以去官网:http://www.elifulkerson.com/projects/tcp ...

  2. Python语法基础练习

  3. Selenium3 + Python3自动化测试系列五——常用断言Assertion

    断言Assertion 验证应用程序的状态是否同所期望的一致. 常见的断言包括:验证页面内容,如标题是否为X或当前位置是否正确,或是验证该复选框是否被勾选. selenium 提供了三种模式的断言:a ...

  4. WebDriver高级应用实例(2)

    2.1在日期选择器上进行日期选择 被测网页的网址: https://www.html5tricks.com/demo/Kalendae/index.html Java语言版本的API实例代码 impo ...

  5. WebForm - cookie赋值乱码问题

    cookie的值为中文时候,取cookie的值会出现乱码 解决办法:存取cookie时候先解码和编码 存cookie,进行编码: cookie.Value = HttpUtility.UrlEncod ...

  6. Alpha冲刺(3/10)——追光的人

    1.队友信息 队员学号 队员博客 221600219 小墨 https://www.cnblogs.com/hengyumo/ 221600240 真·大能猫 https://www.cnblogs. ...

  7. 网络Socket编程UDP协议例子

    服务端代码 public class UDPChatServer { //通讯端口 private Integer port=8000; //数据报文的通讯通道对象 private DatagramC ...

  8. axios跨域post请求后台参数为null

    查了一个小时的资料,大部分都是说设置headers  可能是我查找的关键词不对吧,最后找到一篇文章,把问题解决了 前端解决方式 官方文档 后台解决方式 教程参考地址:http://blog.csdn. ...

  9. vue导出excel数据表格功能

    前端工作量最多的就是需求,需求就是一直在变,比如当前端数据写完之后,需要用Excel把数据下载出来. 第一步安装依赖包,需要把代码下载你的项目当中 cnpm install  file-saver c ...

  10. CSS3 Drop-Shadows效果制作教程分享

    要求 必备知识 基本了解CSS语法,初步了解CSS3语法知识. 开发环境 Adobe Dreamweaver CS6/Chrome浏览器 演示地址 演示地址 Drop-Shadow效果,其实就是大家熟 ...