0%

【文章翻譯】The future of iOS development with Flutter

【文章內容使用 Gemini 1.5 Pro 自動產生】

Flutter 為 iOS 開發的最新成就與未來方向

自 2017 年推出以來,Flutter 迅速成為 iOS 應用程式開發的首選。全球開發人員都 熱愛 Flutter。使用 Flutter,他們可以編寫一次程式碼,然後將其應用程式部署到 iOS、Android、網頁和桌面。這使得 Flutter 獲得了廣泛的追隨者,目前已有超過 一百萬個應用程式 使用 Flutter 構建。

對於重視創新設計的 iOS 開發人員而言,Flutter 已成為首選平台。透過提供空白畫布,Flutter 為設計師提供了無限的可能性。他們可以創造出擺脫預設設計系統的原始體驗。

今天,我想跟大家談談 Flutter 的一些最新改進,以及我們對 iOS 開發人員的未來關注領域。無論您是專業人士還是 Flutter 新手,請继续阅读以了解更多關於 Flutter 在 iOS 上的未來發展。

值得注意的 Flutter iOS 應用程式

Flutter 在 iOS 開發的各行各業和類別中都取得了成功。像 BMWSonosNubank 這樣的大型企業都使用 Flutter 來構建他們的數位體驗。

微信PUBG MOBILE 這樣的科技巨頭使用 Flutter 來支援超過十億活躍用戶。規模較小的公司也利用 Flutter 的快速開發週期。一個例子是 BrickIt,它使用機器學習來建議新的樂高積木創作。

蘋果和其他科技領導者甚至認可了 Flutter iOS 應用程式。Wonderous,Flutter 的參考應用程式,被 提名為 Webby 設計獎。蘋果將 Reflection.app 錄取到其著名的加速器計畫。So Vegan 多次 獲得蘋果的「今日 App」殊榮。

最新增強功能

Flutter 的 iOS 支援一直是我們的首要任務。我們在最近的版本中做出了重大改進。讓我們回顾一些亮點:

改進效能

Impeller,我們專為 Flutter 打造的渲染引擎,現在作爲 Flutter 在 iOS 上的預設引擎。Impeller 是我們團隊多年來一直努力的成果。它解決了 iOS 開發人員使用 Flutter 時最關心的問題:流暢的图形和頂級效能。自其發佈以來,我們看到了應用程式品質的顯著提高。最近,Flutter 引擎的改進進一步改善了啟動延遲,並減少了應用程式大小。

Impeller 還簡化了添加新功能的過程。這些功能從廣色域圖片支援到自訂渲染解決方案。我們在 Flutter Forward 上展示了其中一種自訂渲染解決方案,一個 3D 支援的概念驗證。

Impeller 使 Flutter 能够渲染 3D 圖形,如 Dash (我們的吉祥物) 的趣味演示所示。

開發人員體驗增強功能

我们了解构建和发布 iOS 应用程序的挑战。为了节省开发人员的时间,我们添加了新的工具和资源来简化整个过程。您现在可以通过 Wi-Fi 连接到 iOS 設備 来测试和调试您的应用程序。我们还 對發佈流程添加了驗證。此步骤确保您在将应用程序发布到 App Store 之前已完成所有必要步骤。

Enzo Conty 💚 on Twitter: “#Flutter now support iOS Wireless Debugging ! Here’s me trying it: pic.twitter.com/o7ziMasiYq / Twitter”

Flutter now support iOS Wireless Debugging ! Here’s me trying it: pic.twitter.com/o7ziMasiYq

此外,我们创建了以 iOS 为中心的文档和教程,以帮助开发人员学习 Flutter 并构建 iOS 应用程序。我们在文档中加入了 Swift 和 SwiftUI 示例。我们添加了从 Swift 切换到 DartSwiftUI 切换到 Flutter将 Flutter 添加到现有 iOS 应用程序 的指南。我们还添加了支持 iOS 上的風味 和使用 iOS 应用程序扩展(如主屏幕和鎖定屏幕小部件)的资源。

iOS 風格 UI 組件更新

Cupertino 函式庫 提供了类似 SwiftUI 和 UIKit 视图的 Widget(UI 組件)。这应该让您的应用程序在 Apple 设备上感觉宾至如归。为了更好地符合最新的 iOS 设计指南,我们对我們的 Cupertino 函式庫进行了重大更新。

我们已经解决了投票数最高的 issue,并添加了新的 Widget,如 CupertinoCheckboxCupertinoRadioCupertinoListTile 以及文本输入字段的拼写检查支持。

TextField 和 CupertinoTextField 上的自动 iOS 风格拼写检查

此外,我们认识到跨平台设计的 중요性。我们已為几个 Material Widget 添加了 自适应构造函数。这允许您的 Flutter 应用程序在 Android 和 iOS 设计约定之间进行调整。对于没有自适应构造函数的常见 Widget,我们创建了 初步指南,为您提供代码片段以调整整个 Widget 或 Widget 属性。

路線圖

随着我们继续努力让 Flutter 成为 iOS 开发人员的更好的工具,我们将重点关注以下几个关键领域:

与 Apple 生态系统的整合

Flutter 開發人員應該能夠輕鬆地在他們的應用程式中使用 Apple 的 API。这使他们能够创建融合所有 Apple 優秀功能的沉浸式体验。

几个月前,我们推出了 FFIgen。该工具生成绑定以 直接从 Dart 代码调用 Objective-C 和 Swift API。现在,一些应用程序正在使用 FFIgen 来调用 Apple 的 API。但是,仍然存在局限性。我们正在積極努力使该工具更加强大,使其支持异步回调和更好的 Swift 互操作性。

此外,我们知道 应用程序扩展 在 iOS 生态系统中的重要性。这就是为什么我们正在开发一种方法,使用 Flutter 来创建某些扩展的用户界面 (UI)。这将使开发人员能够重用他们 Flutter 应用程序中的组件来设计扩展的界面。值得注意的是,此方法并不适用于所有类型的扩展。例如,WidgetKit 小部件具有严格的 API 限制。但是,它将适用于其他常见扩展,例如 分享iMessage。若要了解我们的进展,您可以关注 Flutter Github issue 中的这项工作

Flutter 应用程序作为 iOS 分享扩展运行的概念验证

跨平台設計

在多个平台上部署您的应用程序需要一些设计方面的考虑。在自定义 UI 組件的设计以匹配品牌的同时,也要遵守平台约定之间取得平衡。

因此,我们正在研究如何改善设计和构建 Flutter 应用程序的体验。首先,我们希望让 Flutter 的开箱即用的 UI 組件更加灵活。这样,开发人员可以快速自定义 Widget 以匹配他们自己的设计系统。其次,我们希望利用更多的自动化适应性,使 Flutter 应用程序在 iOS 和 Android 上都感觉自然。

開發人員体验

我们致力于改善 Flutter 的 iOS 开发人员体验。一个关键的重点是缩短构建时间,从而提高开发人员的生产力。此外,我们还正在解决一些长期存在的请求,例如 重命名 Runner 应用程序 的功能。最后,我们将繼續優先考虑性能增强和通用的 iOS 保真度。

留下你的反馈

作为一个开源项目,您可以在 GitHub 上跟踪我们的进展。根据我们学到的知识以及您告诉我们的内容,我们可能会添加、延长或推迟功能。

与往常一样,我们重视您的反馈,并感谢您的支持!向我们发送意见的最佳方式是在 GitHub 上提交 issue,并填写我们的季度用户调查。您也可以在 Twitter上关注我,以了解 Flutter iOS 未来工作的最新信息.

资源


Flutter 在 iOS 开发中的未来 最初发布在 Flutter 上的 Medium,人们在那里通过突出显示和回应这个故事来继续讨论。