[关闭]
@qinyun 2018-01-05T06:26:28.000000Z 字数 5572 阅读 1511

2017移动开发年终总结

未分类


一、前言

2018的新年钟声即将敲响,这意味着2017将离我们远去,在过去的一年里,你是学有所成还是碌碌无为?今年年初定下的计划是否都已经完成?今年你错过了移动圈里的哪些大事?接下来,就让小编带着你回顾一下今年移动开发都有哪些热点技术,2018年值得你关注的移动技术又有哪些?

二、2017Android技术动态

在今年Google I/O大会上,谷歌CEO Sundar Pichai宣布谷歌的正在从“移动为首位”转变为“AI高于一切”,所以与往年的开发者大会相比,今年会议的大部分内容都围绕AI展开,如Google将开放Tensor Flow、TPU等软硬件工具给开发者,还发布了一系列人工智能产品如:Google Lens、Google Asistant、Google Home等,并提出了Google.ai计划,相比之下,Android的内容就少了很多,这也意味着谷歌正在Android的基础上逐渐构建自己的人工智能生态系统。在本次大会上,谷歌宣布Android的活跃设备数达到了20亿,这意味着Android系统已成移动行业的霸主。

1. Android 8.0发布

今年最受Android开发者期待的莫过于Android 8.0了,在经过4个开发者预览版的洗礼后,北京时间8月22日谷歌发布了Android 8.0的正式版,取名Android Oreo(奥利奥),简称Android O,“奥利奥”的名字沿袭了谷歌以甜品取名操作系统的传统。相对上一代版本,Android 8.0的功能、流畅性和安全性都有了很大地提升,主要表现在以下几个方面:

功能:

流畅性:

据谷歌透露,Pixel在Android 8.0下的开机速度比上一代系统快了2倍;而且针对各种流氓App采取严格的控制,不常用的App会被强制停止,节省手机耗电量和提高手机流畅性;

安全性:

谷歌在Android 8.0中内置了Play Protect服务,能够自动扫描手机中潜在的恶意App。

2. Android studio 3.0 发布

10月25日,Android Studio 3.0正式版发布,此版本将支持Kotlin编程语言、支持Java 8语言功能、支持XML字体预览、支持Instant App、支持配置和调试APK等。其中,开发人员不再需要通过Android Studio的插件就可直接在Android Studio 3.0中使用Kotlin,包括重构、自动完成、lint、调试等操作。

3. ARCore发布

8月29日,Google了发布构建AR应用平台ARCore,这个项目被看做是Google与苹果在AR领域上的较量,因为苹果6月也推出了AR框架-ARKit,所以ARKit也被认定为ARCore的对标。而在此之前,谷歌也曾研发过一个AR平台Tango,但由于Tango对硬件设备有限制,各方面的性能也比不上ARCore。在今年12月15日,谷歌宣布将从2018年3月1日起停止对旗下AR平台Tango的支持,以后将专注于ARCore平台的研究,在AR上大展拳脚,不知道将来在AR领域的ARCore与ARKit会不会像现在的Android和iOS一样各占半壁江山,让我们拭目以待吧。

4. Kotlin成为Android开发一级编程语言

由于Kotlin比Java更安全——能够静态检测常见的缺陷、更简洁,而且能兼容Java等优点,使它能够短短几年在众多竞争中脱颖而出,成为开发者们的香饽饽。尤其是在今年的Google在大会上,谷歌宣布Kotlin成为Android开发的一级编程语言后,江湖上就开始流传Java将被Kotlin取代的说法,各大论坛的Java与Kotlin大战由此展开,各类站队的文章也层出不穷,好不热闹。

11月初,第一届Kotlin的专题会议KotlinConf在旧金山开幕,会议上Kotlin首席设计师Andrey Breslav宣布Kotlin将要支持iOS和Web开发,这也被称做kotlin与Swift在支持全栈开发上的较量,此消息一出,引发了不少开发者的热议,有开发者表示,kotlin要想拿下iOS估计不是那么容易的事情,毕竟苹果对自己的生态有严格的把控,苹果是不会轻易地给Swift的竞争对手机会的,也有人认为Kotlin应该先把Android的坑填完再去扩张,跨步太大容易摔跤。

但是,不管将来Kotlin将来能否统一江湖,但是从目前来看,Kotlin有了谷歌这座靠山,它的前景还是值得期待的!

5.国内安卓统一推送联盟成立

2017年10月16 日,安卓统一推送联盟大会在京举办,此次大会由中国工信部旗下的中国信息通信研究院泰尔终端实验室主办,多个互联网企业和手机制造企业出席,并宣布百度、阿里、腾讯、华为、小米、OPPO、vivo、个推为联盟的副理事长单位。

“安卓统一推送联盟”的正式成立标志着安卓手机 App 自启和应用间相互唤醒的毛病将得到改善,国内安卓生态的混乱状态将得到有效解决。未来,安卓手机推送消息时,不必唤醒手机应用,从而保证 App 在未被使用时处于休眠状态,节省手机的内存和电量,安卓用户的体验将更加贴近iOS。

三、2017 iOS 技术动态

苹果WWDC2017大会何于6月6日在圣何塞McEnery会议中心召开,苹果发布了四大系统WatchOS 4、macOS High Sierra、tvOS、iOS 11的更新,每个系统相较上一个版本都有很大的提升。

1. iOS 11发布

iOS 11于9月13日凌晨正式发布,9月20日全球正式开放下载,iOS 11相对上一个版本主要有以下更新:

此次除了功能上的更新外,根据苹果最新的规定,从2018年1月1日起,iOS 11将全面停止32位应用程序,意味着从2018年开始,升级iOS 11正式版的系统后,目前App Store里的18.7万款32位的应用将无法搜到或无法打开,而对消费者而言,iPhone 5和其他仅支持32位系统苹果手机将会面临淘汰。

其实早在今年6月份,苹果就开始透露了这个消息,而在更早的2015年,苹果就向开发者传递了64位应用的优势,也暗示着让开发者开发64位的应用程序来适配iPhone 5s之后的新系统,所以就目前来讲,很多应用基本上都已经有了64位的版本,很多仍停留在32位的大多都是比较冷门的应用,对用户来说也不是必备的,所以总的来说,影响不会太大。

2. Swift 4.0发布

Swift 4.0在2017年9月19日正式发布,最新的版本主要针对语言本身以及标准库的大量改动和更新,最重要的变化包括新增的String功能、扩展集合、归档和序列化等。

推荐文章:
Swift 4正式发布,新功能概览

3.苹果“热修复”门事件

今年苹果在移动法规上最大的新闻估计就是“热修复”门事件了,今年三月,苹果向所有开发者推送警告邮件,宣布将禁用App内部的“动态分发”功能,并要求开发者在自家App中删除JSPatch、Rollout等相关框架,否则App将面临下架或禁止在App Store上架。

这一动作,意味着苹果对“热更新”判了死刑,对用户而言,未来更新应用都需重新下载完整的新版数据包。对国外的开发者影响不大,因为国外的开发流程很规范,再者,国外的Google Play也一直是禁止热修复的, 基本不会用热修复进行迭代,基本都是一次性交付。

但对国内的开发者而言,这却是致命的打击,由于之前的“热修复”可以直接通过服务器推送并进行下载迭代,可以避开苹果的“二次审核”,App就能早日上线盈利,但从今以后,这样的“福利”再也没有了。

从根本上来说,还是因为“热更新”破坏了iOS生态的“安全性”与“可控性”,这对苹果来说,这是无法容忍的。

推荐阅读:
苹果“热修复门”事件回顾和分析
App Store 9月审核被拒原因排行榜!

四、2017移动开发话题TOP5

今年大家都在讨论什么?我们将2017年重要技术大会和技术沙龙中移动开发相关的演讲话题做了个分类统计,发现排在前5的话题分类分别是:移动AI、性能优化、移动架构、Kotlin、AR/VR。具体的演讲题目如下:

在这top 5话题中,移动AI的话题数量是最多的,分别是以下这些:
移动电商中的图像算法应用
用人工智能来高效测试 App
利用CNN实现无需联网的智能图像处理
对话式交互:从开端到成长
基于卷积神经网络在手机端实现文档检测
App如何与AI共舞---AI为App开发赋能
深度学习在手机端的应用
移动端设备上的深度学习:Android设备上TensorFlowy应用与实现
安卓车载系统创新功能
轻量级DNN网络在Android上的视觉应用
人工智能技术及在移动端应用
足球游戏的AI实现
深度学习在移动端的应用
使用TensorFlow搭建智能开发系统,自动生成App UI代码
移动端全机型传感器的自适应计步算法设计

iOS App 内存专项实践:封闭系统下的大自由(性能优化
手淘iOS性能优化探索
Android系统开机时间优化
优化Android应用程序的桌面体验
360手机卫士性能提升攻略
移动端性能监控方案 Hertz
从无到有实现一个性能监控平台是怎样一种体验?
移动网络性能优化
Android启动优化-异步dex加载
滴滴出行iOS端瘦身实践

共享代码衍生多款应用的定制框架之经验分享
58同城Android客户端Walle框架演进与实践之路
豌豆荚的反作弊技术架构与设计
一站式短视频技术架构的新解读
美团点评移动端底层架构实践
Android DataBinding:MVVM架构基石,数据驱动APP运转
美团客户端架构演进之路
Atlas: 手机淘宝 Android 架构实践
AOP技术在APP架构上的应用
一个5800 行文件的重构历程

Kotlin from zero to how can it help me?
Kotlin在Android开发中最佳实践探讨
开发效率的抉择:将Kotlin投入Android生产环境中
Kotlin 跨平台,还有 Native
从 Java 到 Kotlin,当机器人不再喝咖啡后
用 Kotlin 定制自己的 DSL
Android 开发从 Java 到100% Kotlin项目实战总结

AR/VR的未来技术趋势
Introduction to Google ARCore
移动互联网时代的VR技术之路 
从2D到3D,AR发展中的关键技术 
如何利用CPU计算能力实现更沉浸的VR体验
虚拟现实产业中Android的现状、未来和挑战

2017是AI崛起的一年,AI技术的应用都有了新的突破,毫无疑问,AI在移动端也自然有了用武之地,移动开发也正亟待AI能帮其突破技术瓶颈,走出现在的困境,并走向另一个巅峰。至于Kotlin今年大热,这估计和上面我们提到的Google将其作为Android开发的一级语言有一定的联系,大家都开始学习Kotlin为未来做准备。

虽然AR/VR在前几年就已经火了,但是在移动设备上的应用进展一直比较缓慢,直到今年上半年苹果和谷歌陆续推出了AR移动开发平台,再加上用户在iOS 11系统上对AR有了不错的体验,随着两家巨头在AR领域的竞争,相信在未来几年AR/VR在移动端会有更大的突破。

五、2017代表性公司移动技术动态

美团篇:

美团今年主要在组件化或模块化、自动化测试、无埋点上。据悉,无埋点是美团的重点项目,但是具体的细节没有透露。

在组件化/模块化上,美团更多是基于前几年累计的经验,美团是从14年开始做平台化,也叫垂直化的模式,在每个领域中做深入地开发。

受到苹果App Store审核新规的影响,所有使用线上热更新的应用,苹果都会以强硬的手段下掉,至此,美团开始重视自动化测试,向国外的技术公司靠拢,直接交付一个高质量的App,比在线上出了问题再去修更有意义。据了解自动测试方面,美团现已经完成了40%,在今后几年会进一步推进这个进程。

在移动AI化方面,美团比较谨慎,或者说保持观望的态度,这件事做或不做不是技术能力的问题,而是目前的业务场景还没有一个特别好的切入点。而且像AI在电商上的应用,它的推荐算法实际上在服务端实现更合适,这并不适合在客户端上做,移动AI场景更多是在离线即脱机的情况下,典型的场景有自然语言的识别、图像的识别,但是这些没法与他们目前的业务场景结合起来。

六、移动开发未来趋势预测

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注