1. 程式人生 > >iOS【Flutter「釋出預覽版 2」讓 iOS 應用至臻完美】

iOS【Flutter「釋出預覽版 2」讓 iOS 應用至臻完美】

Flutter 是 Google 面向移動端應用推出的一套跨平臺開發工具,助力開發者在 iOS 和 Android 兩個平臺上開發高質量的原生應用介面。為期兩日的中國 2018 Google開發者大會於今日在上海拉開帷幕。在大會主題演講環節,我們推出了Flutter 「釋出預覽版 2」。這是我們在到達 Flutter 1.0 之前的最後一個主要版本。  

在今年二月和六月,我們分別釋出了 Flutter 的 beta 版和首個預覽版。與之前兩個版本相比,Flutter「釋出預覽版 2」的核心場景更為完善,整體質量也得到了顯著提升。Flutter 1.0 穩定版目前正處於最後開發階段,敬請期待!

>> beta 版
https://medium.com/flutter-io/announcing-flutter-beta-1-build-beautiful-native-apps-dc142aea74c0

>> 首個預覽版
https://developers.googleblog.com/2018/06/flutter-release-preview-1-live-from.html

Flutter「釋出預覽版 2」新特性

本次新版本釋出的主題是 “讓 iOS 應用至臻完美”。雖然我們設計 Flutter 的目的是幫助開發者實現品牌驅動的定製移動端體驗 ,但是一些開發者反饋說自己平時需要嚴格按照《蘋果官方介面開發指南》來進行應用開發。為此,我們在新版本中特別擴充套件了對 “Cupertino” 風格控制元件的支援。預覽版 2 所提供的庫中包含大量 widget 和類,能夠幫助開發者輕鬆建立 iOS 風格介面。

>>《蘋果官方介面開發指南》
https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/

>> 庫中包含大量 widget 和類

https://docs.flutter.io/flutter/cupertino/cupertino-library.html

△ 使用 Flutter 開發的 iOS 設定頁

以下為 Flutter「釋出預覽版 2」中新新增的 iOS 主題組建 (widget):

- CupertinoApp: 用於建立 iOS 風格應用的頂層元件

- CupertinoTimerPicker: 用於建立倒數定時器

- CupertinoSegmentedControl: 用於建立水平分段控制元件

- CupertinoActionSheet: 用於建立 iOS 風格的底部動作條 (bottom pop-up sheets)

上段文中連結:

>> CupertinoApp
https://docs.flutter.io/flutter/cupertino/CupertinoApp-class.html

>> CupertinoTimerPicker
https://docs.flutter.io/flutter/cupertino/CupertinoTimerPicker-class.html

>> CupertinoSegmentedControl
https://docs.flutter.io/flutter/cupertino/CupertinoSegmentedControl-class.html

>> CupertinoActionSheet
https://docs.flutter.io/flutter/cupertino/CupertinoActionSheet-class.html

改進項包括:  

  • CupertinoNavigationBar 和 CupertinoSliverNavigationBar  

    • 在切換頁面時,實現視差滾動效果

    • 基於 CupertinoPageRoute.title 自動填充頁面標題和返回按鈕的標籤

  • CupertinoPageScaffold

    • 對內容進行重新佈局,防止鍵盤遮蓋介面中的內容

  • CupertinoScrollbar

    • 加強了越界滾動的視覺保真度

  • CupertinoPicker

    • 添加了對無限滾動和迴圈滾動的支援

    • 添加了對離軸圓柱投影的多欄支援

上段文中連結:

>> CupertinoNavigationBar
https://docs.flutter.io/flutter/cupertino/CupertinoNavigationBar-class.html

>> CupertinoSliverNavigationBar  
https://docs.flutter.io/flutter/cupertino/CupertinoSliverNavigationBar-class.html

>> CupertinoPageRoute.title
https://docs.flutter.io/flutter/cupertino/CupertinoPageRoute/title.html

>> CupertinoPageScaffold
https://docs.flutter.io/flutter/cupertino/CupertinoPageScaffold-class.html

>> CupertinoScrollbar
https://docs.flutter.io/flutter/cupertino/CupertinoScrollbar-class.html

>> CupertinoPicker
https://docs.flutter.io/flutter/cupertino/CupertinoPicker-class.html

您可查閱 Flutter 文件,獲取有關 Cupertino* 類的全部詳情。
(請注意,在本文撰寫期間,上述 Cupertino widget 中尚有部分未新增至視覺元件目錄下。)

>> Flutter 文件

https://docs.flutter.io/flutter/cupertino/cupertino-library.html

>> 視覺元件目錄
https://flutter.io/widgets/cupertino/

我們同時也對其它場景進行了完善,例如,預覽版 2 新增加了對後臺執行 Dart 程式碼的支援。即使應用被掛起也不會影響程式碼執行。外掛開發者可以利用這項新特性,讓新開發的外掛能夠在事件被觸發時執行程式碼,例如觸發了定時器或者接收到了地理位置更新。如果您想獲取更多技術細節,瞭解如何利用後臺限制 geofencing 外掛,請查閱此篇 Medium 博文。

>> Medium 博文

https://medium.com/@bkonyi/2b3e40a1a124

此外,Flutter 在應用瘦身方面也進行了不少優化:最多可以減少 30% 的 Android 和 iOS 應用體積。我們在釋出模式下針對 Android 構建出的最小 Flutter 應用體積僅為 4.7 MB,比優化之前減少了 2 MB —— 而且我們還在繼續尋找其它的潛在可優化項。(請注意: 儘管以上改進對 iOS 和 Android 均適用,但鑑於 iOS 安裝包的構建方法異於 Android,您可能會在 iOS上看到不同的結果。)

更多內容請查閱此視訊瞭解詳情:

https://www.youtube.com/watch?v=_LfjILXswJs

>> 最多可以減少 30%

https://github.com/flutter/flutter/issues/16833#issuecomment-410103493

>> 最小 Flutter 應用體積

https://github.com/flutter/flutter/tree/60d223c20c44424e3c8031d019270d22bab35df6/examples/hello_world

>> 鑑於 iOS 安裝包的構建方法

https://github.com/flutter/flutter/issues/16833#issuecomment-400913393

穩健發展

在新開發者麼繼續探索 Flutter 之際,我們想和大家分享一個好訊息:得益於各位的支援與厚愛,Flutte 入選 GitHub 最活躍軟體庫 Top 50 榜單。

△ 圖TOP表單

在今年的 Google I/O 開發者大會上,我們宣佈 Flutter 已經 “為生產環境作好準備了”。隨著 Flutter 1.0 穩定版釋出日的臨近,我們看到了許多新發布的 Flutter 應用,而且還有數千個基於 Flutter 開發的應用已經在 Apple Store 和 Google Play 應用商店內成功上線,其中包含不少全球使用量最多的應用,比如說閒魚 (Android, iOS)、NOW 直播 (Android, iOS)、Google Ads (Android, iOS) 等。點選收看下方視訊,瞭解阿里巴巴的技術團隊是如何利用 Flutter 為中國 5000 萬閒魚使用者帶去精彩移動端體驗。


>> Bilibili 視訊連結:

https://www.bilibili.com/video/av32005383/

我們非常重視客戶滿意度,並會定期進行使用者調查以幫助我們及時獲取使用者反饋。據最近的一次調查結果顯示,92% 的開發者對 Flutter 表示非常滿意或滿意,並且願意向其他人推薦 Flutter。在被詢問到有關開發效率和 UI 設計的問題時,79% 的開發者認為 Flutter 對提高開發速度和部署理想 UI 非常有幫助。此外,最近剛釋出第二個穩定版的 Dart 語言也取得了不俗成績:82% 的 Flutter 開發者對 Dart 語言表示非常滿意或滿意。

>> 最近的一次調查結果

https://medium.com/flutter-io/what-weve-learned-from-the-july-2018-flutter-user-survey-cbbf1e04370c

>> Dart 語言

https://medium.com/dartlang/dart-2-stable-and-the-dart-web-platform-3775d5f8eac7


除了上述調查資料以外,我們還可以從其它許多方面感受到 Flutter 社群的蓬勃發展。例如,Flutter 在開發者問答網站 StackOverflow 的關注度走勢就一路向上:越來越多人在 StackOverflow 網站上釋出、回答或者訪問有關 Flutter 的新問題。

>> StackOverflow 

https://stackoverflow.com/questions/tagged/flutter

△ 四大熱門 UI 框架在 StackOverflow 網站上的問題訪問量統計圖

從第一天誕生起,Flutter 就一直堅持開源,因為這是我們的選擇。我們希望在公開 Flutter開發進展的同時,鼓勵更多個人和組織積極參與,為打造出色的全平臺使用者體驗貢獻出一份力量。

>> 第一天誕生

https://github.com/flutter/engine/commit/20cc569f5961d4e896cb2f4651fd2049066bd47c

升級指南

如何升級至 Flutter「釋出預覽版 2」?如果您目前已經在使用 Flutter,只需要執行下方升級版本命令,就可輕鬆完成升級: 

$ flutter upgrade

如果您尚未嘗試過 Flutter,何不上手試試?請訪問 flutter.io,瞭解詳細下載教程,即刻開始您的 Flutter 探索之旅。

>> 如何升級

https://flutter.io/upgrading/

>> flutter.io

https://flutter.io/get-started/install/

當您準備就緒後,不妨前去探索一下 Flutter 生態圈中豐富的樣例應用和程式碼片段,以。如果您想要獲取 Flutter 團隊提供的示例程式碼,請前往 GitHub 網站內的 flutter/samples儲存庫,進一步瞭解 Material 和 Cupertino 的使用方法,學習如何對 JSON 資料進行反序列化以及更多實用技巧。此外, 您還可以訪問 Flutter 精選示例頁面,看一看 Flutter 社群的開發者們的最佳開發例項。

>> flutter/samples

https://github.com/flutter/samples

>> Flutter 精選示例

https://github.com/flutter/samples/blob/master/INDEX.md

此外,我們還為各位開發者準備了Flutter 教學視訊、Flutter 週刊、Flutter 社群專欄 和 Flutter應用開發教程等精彩內容,幫助您及時瞭解最新出爐的 Flutter 相關訊息。此外,如果您在開發過程中遇到難題,不妨試試從討論小組、聊天室、社群支援和每週線上交流等渠道尋求幫助,與其他開發者共同探討解決方案。「預覽版 2」是穩定版之前的最後一個預覽版。下一站:1.0 見!

上段文中連結:

>> Flutter 教學視訊

https://www.youtube.com/playlist?list=PLOU2XLYxmsIJ7dsVN4iRuA7BT8XHzGtCr

>> Flutter 週刊

https://flutterweekly.net/

>> Flutter 社群專欄

https://medium.com/flutter-community

>> Flutter應用開發教程

https://www.youtube.com/watch?v=yr8F2S3Amas

>> 討論小組
https://groups.google.com/forum/#!forum/flutter-dev

>> 聊天室
https://gitter.im/flutter/flutter

>> 社群支援

https://stackoverflow.com/questions/tagged/flutter

>> 每週線上交流

https://medium.com/flutter-community/humpdayqanda-live-help-for-flutter-00-00-23-59-utc-every-single-wednesday-5864fb417838

相關推薦

iOSFlutter釋出 2 iOS 應用完美

Flutter 是 Google 面向移動端應用推出的一套跨平臺開發工具,助力開發者在 iOS 和 Android 兩個平臺上開發高質量的原生應用介面。為期兩日的中國 2018 Google開發者大會於今日在上海拉開帷幕。在大會主題演講環節,我們推出了Flutter 「釋出預

Flutter釋出 2 iOS 應用完美

Flutter 是 Google 面向移動端應用推出的一套跨平臺開發工具,助力開發者在 iOS

最新Power BI混合現實應用Mixed Reality app釋出

1.介紹 2018年3月13日,Power BI在官方部落格和Docs文件釋出了Power BI for Mixed Reality應用預覽版的訊息, 也就是可以以後在更虛擬的世界中來觀察你的報表,想象一下HoloLens可以在你家裡把報表任意擺放,很有意思。 當然,HoloLens的普及還有點慢,但也

Facebook宣佈釋出深度學習框架 PyTorch 1.0開發者

今日,Facebook 宣佈釋出深度學習框架 PyTorch 1.0 開發者預覽版,包括一些列工具和整合,使其與 Google Cloud、AWS、Azure 的機器學習服務更為相容。 ARM、Nvidia、高通、英特爾也在核心庫整合和跟蹤推理執行時的工具中添加了 PyTorch 支援。 &

TensorFlow 2.0就要來了!最快年底釋出

熱門機器學習框架TensorFlow的最新訊息披露!早些時候來自Google AI的Martin Wicke透露,他們計劃在2018年底釋出TensorFlow 2.0預覽版。   自2015年開源釋出以來,TensorFlow已成為最廣泛採用的ML框架之一,可滿足廣泛的使用

微軟釋出Windows Server 2016的最新,Docker首次亮相

Windows Server上首次出現Docker的身影 本週早些時候,負責微軟Azure業務的CTO Mark Russinovich在Azure部落格上發表了一篇文章 “Docker、Windows and Trends”。在文章中,M

Mozilla 釋出首個原生支援 ARM64 的 Firefox

   Mozilla 近日釋出了首個支援 ARM64 架構的 Firefox 預覽版本,這也讓 Firefox 成為了第一個原生支援 Windows 10 on ARM 的第三方瀏覽器。該版本屬於 Nightly 版本,這意味著它仍處於早期開發階段,在使用過程中可能會

速度真快,ExtJS第5個釋出

Refactored the Tree code. Working features as of this point are Tree rendering, expanding & collapsing, drag and drop, loading a tree from memor

Nokia 收購 Trolltech後乾的第一件好事,Qt 專門的 IDE—— Qt Creator 釋出

from: http://trolltech.com/developer/qt-creator/Qt® Creator™ is a new, lightweight, cross-platform integrated development environment (IDE

微軟釋出IE9

今天的MIX 2010 會議上,IE9 釋出平臺預覽版(IE9 Platform Preview) , 官方下載: http://ie.microsoft.com/testdrive/  (下載連結在網頁右上角)。 這個預覽版主要展示IE9 的幾個特性: 1. 速

.NET 5.06釋出:支援Windows ARM64裝置

2020年6月25日,微軟dotnet團隊在部落格宣佈了第六個 .NET 5.0 的預覽版:https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-6/,在改進效能的同時增加了一些新的功能。ASP.NET Core和 EF Core也將

消息:SQL Server 2017(vNext)的第三個公開的CTP(社區技術)發布了

start spn system 看到了 一個 get creat 社區 目前 今天看到了一個新聞,跟大家分享一下,有興趣的可以去嘗試一下。 SQL Server 2017 CTP3於5月23日發布了,詳細版本號是6.7.55.0。 大家可以去安裝試試。在下載頁面,目前是S

破解SQLServer for Linux的3.5GB內存限制 (RHEL篇) 轉

short https 安裝 his isa wiki pri start section https://www.ancii.com/database/30842.html 微軟發布了SQLServer for Linux,但是安裝竟然需要3.5GB內存,這讓大部分

如何解決Win10一閃而過的disksnapshot.exe進程?

foo com link alt 1-1 屬性 預覽 http 截圖 Win10之家訊上周微軟如約向Insider用戶推送了Win10預覽版10576更新,本次更新修復了之前版本中存在的一些問題,從日常使用的情況來看,對比之前的預覽版系統要更穩定了一些,但是還是存在一

微軟發布Azure Stack第一個技術

模式 net cto linux 第一個 企業 網絡 靈敏度 連接 為了提升商業靈敏度和加快創新步伐,各個企業都在迅速地轉向雲服務。在微軟,我們已經見到微軟智能雲Azure的飛速發展和使用,每月我們都有近十萬的新增訂閱量。然而,我們也了解到還有很多企業在完全移到公有雲這點上

Windows Server 2019 開發者有臉見人

Windows Windows Server 微軟今天官方宣布了新一代服務器操作系統“Windows Server 2019”,將在2018年下半年正式發布,目前已經開始通過Insider渠道進行內測。原文地址:https://cloudblogs.microsoft.com/windowsserve

在WinSrv 2016 Core模式下安裝Exchange Server 2019

x64 -i deb 掛載 tex RoCE rest 缺失 notepad 之前的Exchange Server很多版本大家都很熟知,但每次安裝Exchange Server都是必須安裝在具備GUI圖形化界面的Windows Server上的,很多人覺得Windows S

Exchange 2019部署安裝——Part1

數據 功能 ++ details ane 親測 下載 目錄 logs 微軟在2018年7月24日發布了Exchane 2019預覽版,從Exchange 2019的功能介紹中,大致了解到主要的幾個改變地方:1、UM角色將徹底從Exchange中去掉,要使用UM角色需要使用

Exchange 2019部署安裝——Part2

虛擬 http -a 方式 復制 -c dom chan 虛擬光驅 上一篇文章,大致分享了Exchange 2019的新功能和我測試Exchange 2019的大致環境介紹。下面具體分享安裝過程。總體來說Exchange 2019在WIndows server core上安

Windows 2019 ISO 17723 中文版

load enter process 密鑰 使用 color blog http ace Windows 2019 17723 ISO 下載地址: https://software-download.microsoft.com/sg/Windows_InsiderPrevi