天天看點

2017移動開發年終盤點Android 技術動态iOS 技術動态移動開發熱門話題 TOP5

2017年已經過了大半個月,2017年移動端經曆了哪些大事件呢,現在總結如下。

在今年 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 系統已成移動行業的霸主。

今年最受 Android 開發者期待的莫過于 Android 8.0 了,在經過 4 個開發者預覽版的洗禮後,中原標準時間 8 月 22 日谷歌釋出了 Android 8.0 的正式版,取名 Android Oreo(奧利奧),簡稱 Android O,“奧利奧”的名字沿襲了谷歌以甜品取名作業系統的傳統。相對上一代版本,Android 8.0 的功能、流暢性和安全性都有了很大地提升,主要表現在以下幾個方面:

2017移動開發年終盤點Android 技術動态iOS 技術動态移動開發熱門話題 TOP5

功能:

畫中畫:支援将手機的電影螢幕縮小成懸浮視窗,在看電影的同時可進行其他應用程式的操作;

Notification Dots:App 在接收通知後,将在圖示的右上角生成一個圓形的小點,長安圓點即可顯示該 App最近通知,滑動即可清除,無需經過通知欄;

即時應用:這個與微信小程式類似,App 無需安裝也可通過點選網址打開 App,不過前提是通路的這個 App 支援這個功能,由于Android Instant Apps 是基于 Google Play 服務建構的,是以國内的 Android 使用者暫時無法享用此功能;

智能文字選取:能檢測出選取的文字是位址還是電話号碼,并會根據選取的文字類型打開對應的應用,如地圖或撥号功能。

流暢性:

據谷歌透露,Pixel 在 Android 8.0 下的開機速度比上一代系統快了 2 倍;而且針對各種流氓 App 采取嚴格的控制,不常用的 App 會被強制停止,節省手機耗電量和提高手機流暢性;

安全性:

谷歌在 Android 8.0 中内置了 Play Protect 服務,能夠自動掃描手機中潛在的惡意 App。

10 月 25 日,Android Studio 3.0 正式版釋出,此版本将支援 Kotlin 程式設計語言、支援 Java 8 語言功能、支援 XML 字型預覽、支援 Instant App、支援配置和調試 APK 等。其中,開發人員不再需要通過 Android Studio 的插件就可直接在 Android Studio 3.0 中使用 Kotlin,包括重構、自動完成、lint、調試等操作。

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 一樣各占半壁江山,讓我們拭目以待吧。

由于 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 有了谷歌這座靠山,它的前景還是值得期待的!

2017 年 10 月 16 日,安卓統一推送聯盟大會在京舉辦,此次大會由中國工信部旗下的中國資訊通信研究院泰爾終端實驗室主辦,多個網際網路企業和手機制造企業出席,并宣布百度、阿裡、騰訊、華為、小米、OPPO、vivo、個推為聯盟的副理事長機關。

“安卓統一推送聯盟”的正式成立标志着安卓手機 App 自啟和應用間互相喚醒的毛病将得到改善,國内安卓生态的混亂狀态将得到有效解決。未來,安卓手機推送消息時,不必喚醒手機應用,進而保證 App 在未被使用時處于休眠狀态,節省手機的記憶體和電量,安卓使用者的體驗将更加貼近 iOS。

蘋果 WWDC2017 大會何于 6 月 6 日在聖何塞 McEnery 會議中心召開,蘋果釋出了四大系統 WatchOS 4、macOS High Sierra、tvOS、iOS 11 的更新,每個系統相較上一個版本都有很大的提升。

iOS 11 于 9 月 13 日淩晨正式釋出,9 月 20 日全球正式開放下載下傳,iOS 11 相對上一個版本主要有以下更新:

iMessage: 新的 iMessage 內建了 iCloud 功能,所有的資訊都能通過 iCloud同步,可删除本地資訊,僅存于雲端,優化手機本地記憶體;

Apple Pay: 支援點對點支付,可直接給對方付款,就像微信支付一樣友善;

Siri:Siri 的發音将更加自然,并加入了男聲,Siri 在 iOS 11中已經内置翻譯功能,可以将英語翻譯成漢語、法語、德語、意大利語以及西班牙語。除了語音之外,在 iOS 11 系統中,使用者還可以通過打字跟 Siri 進行溝通;

支援 AR:在 iOS 11 中,還有一個令人期待的功能 AR,iOS 11 帶來了 ARKit,這是蘋果全新的 AR應用平台,開發者可以使用内置的錄影機、傳感器和處理器在 iOS 裝置上開發 AR 體驗的應用。

此次除了功能上的更新外,根據蘋果最新的規定,從 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 位的大多都是比較冷門的應用,對使用者來說也不是必備的,是以總的來說,影響不會太大。

今年蘋果在移動法規上最大的新聞估計就是“熱修複”門事件了,今年三月,蘋果向所有開發者推送警告郵件,宣布将禁用 App 内部的“動态分發”功能,并要求開發者在自家 App 中删除 JSPatch、Rollout 等相關架構,否則 App 将面臨下架或禁止在 App Store 上架。

這一動作,意味着蘋果對“熱更新”判了死刑,對使用者而言,未來更新應用都需重新下載下傳完整的新版資料包。對國外的開發者影響不大,因為國外的開發流程很規範,再者,國外的 Google Play 也一直是禁止熱修複的, 基本不會用熱修複進行疊代,基本都是一次性傳遞。

但對國内的開發者而言,這卻是緻命的打擊,由于之前的“熱修複”可以直接通過伺服器推送并進行下載下傳疊代,可以避開蘋果的“二次稽核”,App 就能早日上線盈利,但從今以後,這樣的“福利”再也沒有了。

從根本上來說,還是因為“熱更新”破壞了 iOS 生态的“安全性”與“可控性”,這對蘋果來說,是無法容忍的。

2017年移動最熱門的話題莫過于:移動 AI、性能優化、移動架構、Kotlin、AR/VR。

移動 AI

今年毫無疑問是 AI 年,各種其它領域都羨慕嫉妒恨的想跟 AI 扯上關系,移動也不例外。語音互動的成熟催生了 CUI,另外端上的 AI 也的确是一個趨勢,是以有了很多與此相關的分享。

移動電商中的圖像算法應用

用人工智能來高效測試 App

利用 CNN 實作無需聯網的智能圖像處理

對話式互動:從開端到成長

基于卷積神經網絡在手機端實作文檔檢測

App 如何與 AI 共舞 ---AI 為 App 開發賦能

深度學習在手機端的應用

移動端裝置上的深度學習:Android 裝置上 TensorFlow 應用與實作

安卓車載系統創新功能

輕量級 DNN 網絡在 Android 上的視覺應用

人工智能技術及在移動端應用

足球遊戲的 AI 實作

深度學習在移動端的應用

使用 TensorFlow 搭建智能開發系統,自動生成 App UI 代碼

移動端全機型傳感器的自适應計步算法設計

性能分析與優化:

性能優化在移動開發中是一個長盛不衰的話題,移動架構一複雜起來,必然出現性能瓶頸,這時就要去做分析和優化。而在性能分析這一塊,APM 越來越受到重視,不少公司都自建了 APM 系統。

iOS App 記憶體專項實踐:封閉系統下的大自由

手淘 iOS 性能優化探索

Android 系統開機時間優化

優化 Android 應用程式的桌面體驗

360 手機衛士性能提升攻略

移動端性能監控方案 Hertz

從無到有實作一個性能監控平台是怎樣一種體驗?

移動網絡性能優化

Android 啟動優化 - 異步 dex 加載

滴滴出行 iOS 端瘦身實踐

移動架構

17 年以來,移動架構很少有大的革新,連 Rx 和函數式的分享都少了不少,感覺架構更加像是一個拓荒的工作,一旦穩定,事情就比較少了。不過架構還是很重要的,選錯型的話隻能流淚跪着走完了。

共享代碼衍生多款應用的定制架構之經驗分享

58 同城 Android 用戶端 Walle 架構演進與實踐之路

豌豆莢的反作弊技術架構與設計

美團點評移動端底層架構實踐

Android DataBinding:MVVM 架構基石,資料驅動 APP 運轉

美團用戶端架構演進之路

Atlas: 手機淘寶 Android 架構實踐

AOP 技術在 APP 架構上的應用

一個 5800 行檔案的重構曆程

Kotlin

今年也是 Kotlin 年,在 Google IO 之後 Kotlin 着實風光了一把,開發者對于效率的追求是 Kotlin 如此受歡迎的最大原因,而它的勢頭也很不錯,跨平台的野心讓更多人有了使用它的理由,如今看起來,它甚至比 Swift 更有前途。

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

随着 AI 的落地和蘋果谷歌的力推,AR 逐漸來到了我們的身邊,最常見的就是各種美顔、直播 App 裡的貼紙、表情、試妝等,都是 AR 的應用。AR 作為垂直領域已經值得投入了。

AR/VR 的未來技術趨勢

Introduction to Google ARCore

移動網際網路時代的 VR 技術之路

從 2D 到 3D,AR 發展中的關鍵技術

如何利用 CPU 計算能力實作更沉浸的 VR 體驗

虛拟現實産業中 Android 的現狀、未來和挑戰

2017 年移動開發的公開分享明顯減少了,原因這裡不多說,對于移動開發者來說,真是聽一個少一個,向每一個分享者緻敬!

在新的一年裡,移動開發前線仍會持續關注移動技術動态,也歡迎開發者繼續關注移動開發前線。想知道過去一年國内代表性公司在移動開發上都做了哪些工作,以及 2018 年值得你關注的移動技術有哪些?請見下回分解~

繼續閱讀