iOS6、7、8、9新特性总汇和适配说明 (20)

@property(nonatomic,strong)CLLocationManager* maneger;

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    

    // 当使用iOS8定位的时候需要请求用户授权,且在info.plist里添加字段NSLocationAlwaysUsageDescription 请求用户授权的描述

    // iOS7仅仅需要在info.plist里添加字段Privacy - Location Usage Description 请求用户授权的描述

    // 不需要再写下面的代码

    if (IOS8) {

        [self.maneger requestAlwaysAuthorization];//请求用户授权 

    }

    

    // 开启定位

    [self.maneger startUpdatingLocation];

    

}

 

[Format Time: 0.0037 seconds]

 

四、针对屏幕适配应运而生的size classes

size classes是为了解决storyboard只能订制一种屏幕样式的问题,它不再是具体的尺寸,而是抽象尺寸通过宽/高 的compact、any、regular 组成了九种组合包含了所有苹果设备的尺寸。

iOS9新特性

一、网络适配

iOS9系统发送的网络请求将统一使用TLS 1.2 SSL。采用TLS 1.2 协议,目的是强制增强数据访问安全,而且系统Foundation框架下的相关网络请求,将不再默认使用HTTP等不安全的网络协议,而默认采用TLS 1.2。服务器因此需要更新,以解析相关数据。如不更新,可通过在 info.plist 中声明,倒退回不安全的网络请求。

什么是SSL/TLS?跟HTTP和HTTPS有什么关系?

跟往常一样,先说结论:

Crayon Syntax Highlighter v2.7.1

HTTP + SSL/TLS + TCP = HTTPS

1

 

HTTP + SSL/TLS + TCP = HTTPS

 

[Format Time: 0.0005 seconds]

TLS 是 SSL 新的别称。举个例子:

“TLS1.0”之于“SSL3.1”,犹“公元2015”之于“民国104”,或者是“一千克”之于“一公斤”,或者是“半斤”之于“八两”:称呼不同,但意思相同。

SSL 3.0版本之后的迭代版本被重新命名为TLS 1.0,也就是说:

Crayon Syntax Highlighter v2.7.1

TLS 1.0 = SSL 3.1

1

 

TLS 1.0 SSL 3.1

 

[Format Time: 0.0004 seconds]

所以他们是一个东西,我们平常也经常简单见到 “SSL/TLS” 这种说法。常用的是下面这些:

Crayon Syntax Highlighter v2.7.1

SSL 2.0

 

SSL 3.0

 

TLS 1.0 (SSL 3.1)

 

TLS 1.1 (SSL 3.1)

 

TLS 1.2 (SSL 3.1)

1

2

3

4

5

6

7

8

9

 

SSL 2.0

 

SSL 3.0

 

TLS 1.0 (SSL 3.1)

 

TLS 1.1 (SSL 3.1)

 

TLS 1.2 (SSL 3.1)

 

[Format Time: 0.0010 seconds]

那为什么标题是“使用HTTPS”而没有提及SSL和TLS什么事? 要理解这个,要看下一个公式:

Crayon Syntax Highlighter v2.7.1

HTTP + SSL/TLS + TCP = HTTPS

1

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwgywp.html