关于iOS11新特性,swift旧项目编译情况

关心一下iOS新版的特性(2)

Tom 创建于 2017-8-26

最新发表:


Jedis的简单使用

数据加速

你可能感兴趣的内容:


对MVVM、VIPER的简单理解

什么样的需求使用哪种模式


体验XCode9中的Swift

Swift与OC混合编译

关于iOS11新特性

前几天,已经体验了一下Xcode9的一点点功能。最近这段时间,抽空就看了一下iOS11的新特性以及Xcode9的swift语言上的一些体验。

iOS11 比较让人期待的一些功能:

1、纯arm64的操作系统的HEIF、HEIC格式体验(需要A9或者以上的CPU)

非A9体验如何?手上只有haswell cpu编码HEVC,配置选normal,转码相当耗时。以后有硬件再体验吧,现在没有。

在这里先科普一下HEVC,一种新的视频格式,HEIF对应的是苹果专用图像格式。HEVC也就是H.265,上一代是H.264。HEVC组织称同样的画质,视频大小可以减小一半以上。不过实际体验也是如此,40M的内容压缩一下只有15M左右。目前唯一的瓶颈是压缩速度,H264的时代,一台配置低的机器,压缩一片720p的视频,硬件编码速度在0.7X左右。H265,同样的配置,软件编码在0.3X左右。5分钟的小视频,配置normal压缩时间15分钟。当然有最慢配置,小于0.01X,5分钟视频可以压缩8小时或者更久。

说说为啥关注视频、图像的存储体积。2017年,闪存价格上涨。同样型号固态硬盘,2017.1价格850,现在价格1299。一台不是入门级的手机本来就挺贵,闪存再涨价,肯定就只能买低配的,电脑也一样。三星、镁光存储生产厂商最近这段时间都犯错了,损耗了不少原材料。在原材料紧缺的情况下,价格自然下不来。影响的就是固态硬盘,内存条。现在手机、电脑对闪存需求日益增长,存储空间有限的情况下,自然就会想能多利用一点资源最好。当然HEVC在2013年提出以后,进展比较缓慢,intel、Nvidia、苹果这两年相继开始在自家硬件上支持硬件编解码的功能。我们都知道软件编解码是很慢的,没效率的。上次看到老外有篇文章说7200U,一片10bit电影转码时间只要12分钟。同样性能的CPU,支持硬解码的CPU,看4K 10bit视频非常流畅,一点都不卡,反之就卡的不能动。

新技术逐渐成熟,有些旧机器不支持的,自然就换机了,没得说。当然,HEIF、HEIC格式也有毛病,就是只能在OS X High Sierra可以查看,iOS11的手机可以查看,跨平台不通用。

2、Core NFC,NFC部分功能开放

说到NFC,目前常用的无非就是公交地铁。至于其他领域,像打卡机这类的场景也会用得到。目前,二维码支付在手机上相当流行,已经是处处离不开二维码了。自从2017年开始,纸币都不算特别必须的。吃饭,干嘛都可以用微信,支付宝。但二维码和NFC的区别也是很明显的,为什么公交系统不用二维码?每次扫二维码支付要时间的,一次支付不是马上就能完成。NFC在公交领域用的相当广泛,就是刷卡。刷一下就走,速度快。NFC卡安全性一般,刷卡都不用确认,如果大规模的投入到非公共交通领域,容易遇到安全问题。打卡这种不涉及钱的,就还没问题。支持NFC的手机,可以不用跑专门的充值点充值。另外,在共享单车方面挺有用的,因为共享单车的二维码容易被暴力破坏。iPhone过去限制了NFC的功能,现在开放了部分功能,希望在未来的生活中可以有更方便的感受。

3、流畅度

那肯定不用说,旧机器升级以后,不要被修复了过于流畅的bug就好。

关于swift4与xcode9

Swift4.0出来,还没看,明年如果再出5.0呢?说不清楚。目前比较好的一点,在xcode9中编译swift3代码,还是可以很好编译的。没有出现错误,有做了兼容。说是xcode9集成了swift3引擎,没有直接砍掉旧版本的编译器,还算不错。当然如果出swift5,不支持编译swift3,swift3的代码也是要改成支持新语法的代码。短期不考虑用swift做开发,说来说去还是维护成本的问题。

当然,现在,还没尝试转换swift4会发生什么结果,有时间再整理。