亚洲欧美日韩国产成人|亚洲中文字幕无码中字|HEYZO在线无码综合|久久久不卡精品国产一区二|久久精品亚洲无中文东京热|中文字幕乱码一区三区免费|亚洲国产欧美在线观看片不卡|国产精品久久一区二区三区97

硬核推薦(flutter官方文檔中文版)flutter官方教程,F(xiàn)lutter 2.2 全新功能介紹,錫林郭勒盟地圖全圖,

保健品 nanfang 2023-09-05 02:13 124 0

1.flutter 2.0 文檔

?原文鏈接:https://medium.com/flutter/whats-new-in-flutter-2-2-fd00c65e2039?「本次 Flutter 2.2 正式版主要著重于優(yōu)化:包括 iOS 性能改進,Android 延遲加載組件,針對 Flutter Web 服裝趨勢的更新等等」

2.flutter中文網(wǎng)

每個 Flutter 新穩(wěn)定版本的發(fā)布都會帶來一些更新,無論是性能增強、新功能還是錯誤修復,盡管 Flutter 2 才發(fā)行了兩個月,但 2.2 依舊在 Flutter 2 的基礎上做了很多改進,該版本合并了 2456 個 PR,涉及 Framework、 engine 和 plugins 的 issue 關閉了 3105 個 。

3.flutter中文官網(wǎng)

Flutter 2.2 更新穩(wěn)定此版本在 Flutter 2 之上進行了大量的改進,包括 Android,iOS 和 Web 上的更新,如新的Material 圖標,文本處理,滾動條行為的更新以及對 Tex服裝趨勢tSpan

4.flutter2.0教程

 控件的鼠標光標支持Dart 2.13Flutter 2.2 包含了 Dart 2.13 版本,此 Dart 更新主要包含一個「新的類型別名功能」,使開發(fā)者能夠為類型和函數(shù)創(chuàng)建別名:// Type alias for functions (existing)。

5.flutter_downloader

typedef ValueChanged = voidFunction(T value);// Type alias for classes (new!)typedef StringList = 

6.flutter?

List;// Rename classes in服裝趨勢 a non-breaking way (new!)@Deprecated("Use NewClassName instead")typedef

7.flutter官方app

 OldClassName = NewClassName;使用類型別名可以為復雜的長類型提供“漂亮”的短名稱,還可以讓開發(fā)者以連續(xù)的方式重命名類?更多 dart 2.13 內(nèi)容 :https://medium.com/dartlang/announcing-dart-2-13-c6d547b57067。

8.flutter cn

?Flutter Web 更新Flutter Web 作為 Flutter 最新的穩(wěn)定平臺,Web 在服裝趨勢此版本中做了很多的改進首先,「使用新的 service 加載機制優(yōu)化了緩存行為」,并修復了的重復下載 。

9.flutter軟件

main.dart.js 的問題在 Flutter Web 的早期版本中,后臺在更新下載到應用程序后,用戶不刷新瀏覽器是不會看到這些更改,而從 Flutter 2.2 開始,當檢測到更改時用戶可以直接看到更新,而無需再次手動刷新頁面。

10.flutter platform

?啟用此更改要求重新生成 Flutter 應用的 index.html,所以你可以先保存  index.html 里的修改,然后刪除 index.html 文件,再通過 flutter create .服裝趨勢

 在項目目錄中運行從而重新創(chuàng)建它?「Flutter 2.2 還對兩個 Web 渲染器進行了改進:」「對于 HTML 添加了對字體功能的支持」,啟用設置 FontFeature 以及使用畫布 API 渲染文本,以便在懸停時將其顯示在正確的位置。

「對于 HTML 和 CanvasKit都添加了 computeLineMetrics 和對著色器蒙板的支持」,以解決 Flutter Web 和移動應用程序之間的差距,例如:開發(fā)人員現(xiàn)在可以使用不透明蒙板,使用著色器蒙板執(zhí)行淡出過渡,并使用 

computeLineMetrics 像在移動應用程序中一樣使用對于 Flutter Web 而言,Semantics服裝趨勢 是的首要任務之一, Flutter 通過構建SemanticsNode 樹來實現(xiàn)可訪問性。

Flutter Web 用戶啟用 Semantics 后,框架將生成與 DOM 樹平行的 RenderObjectDOM樹,并將語義屬性轉換為 Aira在此版本中改進了語義節(jié)點的位置,以縮小使用轉換時移動和桌面 Web 應用程序之間的距離,這意味著在使用轉換為 。

Widget 設置樣式時,焦點框應正確顯示在元素上。

我們還在配置文件和發(fā)布模式下使用命令行標志公開了語義節(jié)點調試樹,以幫助開發(fā)人員通過可視化為其 Web 應用程序創(chuàng)建的語義節(jié)點來調試可訪問性要在 Flutter Web 應用啟用此功能,請運行以服裝趨勢下命令:$ flutter run -d chrome --profile \

  --dart-define = FLUTTER_WEB_DEBUG_SHOW_SEMANTICS = true激活該標志后將能夠在 Widget 頂部看到語義節(jié)點,就可以調試并查看語義元素是否放置在不應放置的位置。

雖然在支持一系列核心輔助功能方面取得了比較大的進步,但我們將繼續(xù)改善輔助功能的支持在 2.2 穩(wěn)定版之后的 master 和 dev 通道上可用的內(nèi)部版本中,我們還添加了一個 API,使得開發(fā)人員能夠以編程方式自動啟用其應用程序的可訪問性,并解決了將 Tab 與屏幕閱讀器配合使用的問題。

「最后最新版本的 F服裝趨勢lutter DevTools 現(xiàn)在支持 Flutter Web 應用」。

iOS頁面過渡和增量安裝「在此版本中對于 iOS 我們通過將渲染動畫幀所需的時間減少了 75%」 ,使在 Cupertino 中的頁面過渡更加平滑在此版本中還實現(xiàn)了在開發(fā)過程中增量的iOS安裝,「基準測試中我們發(fā)現(xiàn)安裝更新版本的 iOS 應用程序的時間減少了40%」。

使用 Flutter 構建自適應平臺應用隨著 Flutter 穩(wěn)定版的支持平臺越來越多,不僅需要考慮支持不同形式的設備(例如移動設備,平板電腦和臺式機),還需要支持不同輸入類型(觸摸與鼠標+鍵盤)以及具有不同平臺的應用,所以我們將:。

「可以根據(jù)不同目標平臺的服裝趨勢詳細信息,進行自我調整的應用稱為“平臺自適應”應用」?更多可見:https://flutter.dev/docs/development/ui/layout/building-adaptive-apps。

?對于根據(jù)這些原則為多個平臺編寫的 Demo 的應用程序,我們推薦參考 gSkinner 的 Flokk 和 Flutter Folio 應用程序Flutter 平臺自適應應用指南的 UX 部分基于新的大屏幕 。

Material 指南,Material 團隊的新指南包括對一些主要布局文章的處理,以及對多個組件的更新和更新的設計套件,所有這些都考慮到了大屏幕。

更多材料圖標在“ Material 服裝趨勢指南”的主題上,在此發(fā)行版中我們分割出兩個單獨的 PR,為 Flutter 添加了新的 Material 圖標,包括 Dash 自己的圖標。

這些更新使開發(fā)者的應用程序的 Material 圖標總數(shù)達到了 7,000 多個,現(xiàn)在可以在fonts.google.com/icons 上按類別和名稱進行搜索。

?找到合適的圖標后,新的 Flutter 標簽會顯示如何使用它,或者可以選擇僅下載該圖標以用作應用程序中?改善文字處理文本處理一直是 Flutter 里著重處理的領域,在此版本中已經(jīng)開始重構處理文本輸入的方式,以啟用諸如在 。

「Widget 點擊冒泡時取消 keystroke 之類的功能,并引入完服裝趨勢全自定義與文本操作相關的 keystrokes 的功能」。

能夠取消 keystrokes 使 「Flutter 能夠實現(xiàn)使用空格鍵和箭頭鍵之類觸發(fā)滾動的功能」,從而為最終用戶提供更直觀的體驗在 keystrokes 進入到應用程序中的父窗口 Widget 之前,開發(fā)者可以使用相同的功能來處理 。

keystrokes另一個示例是可以在 TextField 和按鈕之間使用 Tab 鍵切換:importpackage:flutter/material.dart;void main() => runApp(App());。

classAppextendsStatelessWidget{@override服裝趨勢 Widget build(BuildContext context) => MaterialApp(       title:

Flutter Text Editing Fun,       home: HomePage(),     );}classHomePageextendsStatelessWidget{@override

 Widget build(BuildContext context) => Scaffold(       body: Column(         children: [           TextField(),

OutlinedButton(onPressed服裝趨勢: () {}, child: const Text(Press Me)),         ],       ),     );}

「自定義文本操作讓開發(fā)者可以執(zhí)行諸如 TextField中 Enter 鍵的特殊處理之類的操作」,例如可以觸發(fā)在聊天客戶端中發(fā)送消息,同時允許通過 Ctrl + Enter 插入換行符?這些文本操作使 Flutter 本身可以提供不同的 。

keystrokes ,以將文本編輯的行為與主機 OS 本身進行匹配,如 Windows 和 Linux上 的 Ctrl + C 和 macOS 上的 Cmd + C?下面的示例將覆蓋默認的向左箭頭操作,并為 。

Backspac服裝趨勢e和 Delete 鍵提供新的操作:importpackage:flutter/material.dart;importpackage:flutter/services.dart;void

 main() => runApp(MyApp());classMyAppextendsStatelessWidget{@override Widget build(BuildContext context) => MaterialApp(

title: Flutter TextField Key Binding Demo,       home: Scaffold(body: UnforgivingTextFi服裝趨勢eld()),

     );}/// A text field that clears itself if the user tries to back up or correct/// something.class

UnforgivingTextFieldextendsStatefulWidget{@override State createState() => _UnforgivingTextFieldState();

}class_UnforgivingTextFieldStateextendsState {// The text editing controller used to clear t服裝趨勢he text field.

 late TextEditingController controller;@overridevoid initState() {super.initState();   controller = TextEditingController();

 }@override Widget build(BuildContext context) => Shortcuts(       shortcuts: {

// This overrides the left arrow key binding that the text field normally// has in or服裝趨勢der to move the cursor back by a character. The default is

// created by the MaterialApp, which has a DefaultTextEditingShortcuts// widget in it.         LogicalKeySet(LogicalKeyboardKey.arrowLeft): 

const ClearIntent(),// This binds the delete and backspace keys to also clear the text field.// You can服裝趨勢 bind any key, not just those already bound in

// DefaultTextEditingShortcuts.         LogicalKeySet(LogicalKeyboardKey.delete): const ClearIntent(),

         LogicalKeySet(LogicalKeyboardKey.backspace): const ClearIntent(),       },       child: Actions(

actions: {// This binds the intent that indicates cleari服裝趨勢ng a text field to the

// action that does the clearing.           ClearIntent: ClearAction(controller: controller),         },

         child: Center(child: TextField(controller: controller)),       ),     );}/// An intent that is bound to ClearAction.

classClearIntentextendsIntent{const ClearIntent();}/// An 服裝趨勢action that is bound to ClearIntent that clears the TextEditingController

/// passed to it.classClearActionextendsAction { ClearAction({required this.controller});

final TextEditingController controller;@overrideObject? invoke(covariant ClearIntent intent) {   controller.clear();

 }}

自動滾動行為實際顯示滾動條時 Andro服裝趨勢id 和 iOS 的邏輯是相同的,而對于桌面應用程序,當內(nèi)容大于容器時通常會自動顯示滾動條,這需要添加 Scrollbar 作為父 Widget,「為了在手機或 PC 上都能正常,此版本

Scrollbar 會在必要時會自動添加」例如下面所示的無滾動條的代碼:importpackage:flutter/material.dart;void main() => runApp(App());。

classAppextendsStatelessWidget{@override Widget build(BuildContext context) => MaterialApp(       title: 

A服裝趨勢utomatic Scrollbars,       home: HomePage(),     );}classHomePageextendsStatelessWidget{@override Widget build(BuildContext context) => Scaffold(

       body: ListView.builder(         itemCount: 100,         itemBuilder: (context, index) => Text(

Item $index),       ),     );}在桌面上運行它時,將顯示一個滾動條:

如果你不喜歡滾動條的外觀或服裝趨勢始終顯示滾動條的邏輯,「可以設置一個 ScrollBarTheme,則可以在整個應用范圍內(nèi)或在特定實例上,通過設置來更改它 ScrollBehavior 來完成修改」鼠標光標在文本范圍內(nèi)。

在 Flutter 的早期版本中,開發(fā)者可以在任何窗口小部件上添加鼠標光標(如指示可點擊內(nèi)容的手),而實際上 Flutter 本身在大多數(shù)情況下會添加這些鼠標光標,例如:在所有按鈕上添加一個手形鼠標光標。

但是如果要運行帶有不同文本跨度,且具有各自樣式并且可能足夠長的自動換行的格式豐富的文本,那么TextSpan 就不會是一個 Widget,因此不能用作鼠標光標的可視范圍...而從此版本開始,「當擁有 Text服裝趨勢Span

 帶有手勢識別器的時將自動獲得相應的鼠標光標」:importpackage:flutter/gestures.dart;importpackage:flutter/material.dart;import

package:url_launcher/url_launcher.dartas urlLauncher;void main() => runApp(App());classAppextendsStatelessWidget

{staticconst title = Flutter App;@override Widget build(BuildContext context) => Ma服裝趨勢terialApp(       title: title,

       home: HomePage(),     );}classHomePageextendsStatelessWidget{@override Widget build(BuildContext context) => Scaffold(

       appBar: AppBar(title: Text(App.title)),       body: Center(         child: RichText(           text: TextSpan(

style: TextStyle(fontSize: 48),           服裝趨勢  children: [               TextSpan(                 text:

This is not a link, ,                 style: TextStyle(color: Colors.black),               ),               TextSpan(

                 text: but this is,                 style: TextStyle(color: Colors.blue),                 recognizer: TapGestureRecognizer()

.服裝趨勢.onTap = () {                     urlLauncher.launch(https://flutter.dev);                   },

               ),             ],           ),         ),       ),     );}現(xiàn)在可以擁有所需的自動換行文字跨度,并且其中任何帶有識別器的文字都將獲得適當?shù)氖髽斯鈽恕?/p>

image.png在此版本中,TextSpan 還支持 onEnter和  onExit ,并且對應的擁有 mouseCursorFlutter 2.2 更新預覽除了可用于生產(chǎn)的新功能外,F(xiàn)lutter 2服裝趨勢.2 還提供了許多預覽功能,包括 。

「iOS 著色器編譯器性能改進,Android 延遲組件支持,F(xiàn)lutter 桌面更新以及 Sony 的 ARM64 Linux 主機支持」預覽:iOS著色器編譯改進用圖形渲染術語來說,“著色器” 是要在最終用戶設備上可用的 GPU 編譯并運行的程序。

自成立以來 Flutter 一直在底層 Skia 圖形庫中使用著色器,以其自身的高質量圖形效果(包括顏色,陰影,動畫等)提供本機性能由于 Flutter API 的靈活性,著色器可以實時生成和編譯,并與需要它們的幀工作負載同步,所以當編譯著色器的時間超出框架預算時,體驗結果對于用戶來說會很明顯。

為了避免出現(xiàn)問題服裝趨勢,「Flutter 提供了在運行期間訓練緩存著色器的功能,然后將它們打包并捆綁到應用程序中,并在 Flutter Engine 啟動時在第一幀之前進行編譯」這意味著預編譯的著色器不必在幀工作負載期間進行編譯,也不會造成垃圾回收,但是 Skia 最初僅為 。

OpenGL 實現(xiàn)了此功能?因此當我們默認情況下在 iOS 上啟用 Metal 以響應 Apple 棄用 OpenGL 時,根據(jù)我們的基準測試,渲染幀時間增加了,而用戶報告的產(chǎn)生的垃圾也增加了?我們的測量數(shù)據(jù)表明,這些報告通常是由于著色器編譯時間增加,Skia 為 。

Metal 后端生成的著色器數(shù)量,增加以及已編譯的著色器無法在各次運行之間緩服裝趨勢存,而使得 jank 持續(xù)到第一次運行之外而導致的一個應用程序?因此直到現(xiàn)在,在 iOS 上避免這種麻煩的唯一方法是簡化場景和動畫,但這并不理想。

?但是,「現(xiàn)在在 dev 通道上是 Skia 中對 Metal 的著色器預熱的新支持的預覽」,通過 Skia,F(xiàn)lutter 現(xiàn)在可以在第一幀工作負載開始之前編譯帶捆綁的著色器。

但是,此解決方案有一些警告:Skia 仍然需要為 Metal 生成比 OpenGL 后端更多的著色器;最終的著色器對機器代碼的編譯仍需要與框架工作負載同步發(fā)生,但這比在框架渲染時間中進行整個著色器生成和編譯要快;

首次運行應用程序后,將緩存生成的機器代碼,直到重新啟動設備為止;服裝趨勢如果想在應用程序中利用此新支持,可以按照 flutter.dev 上的說明進行操作但是,我們還沒有完成這項工作在 Android 和 iOS 上此實現(xiàn)都有一些缺點:。

部署的應用程序的大小較大,因為它包含捆綁的著色器;應用程序啟動等待時間更長,因為捆綁的著色器需要預先編譯;開發(fā)人員暗示了我們對這種實現(xiàn)所帶來的體驗不滿意;我們認為最后一個問題最重要,特別是查看了執(zhí)行培訓運行的過程,并推理了因應用程序大小和應用程序啟動延遲而帶來過于繁瑣的折衷。

「因此我們將繼續(xù)研究,消除不依賴此實現(xiàn)的著色器編譯垃圾以及所有垃圾的方法」特別是我們正在與 Skia 團隊合作,以減少響應 Flutter 的要求而生成的著色服裝趨勢器的數(shù)量,并研究使用 Flutter Engine 捆綁的一小套靜態(tài)定義的著色器實現(xiàn)。

?可以在Flutter 中關注該項目,以了解我們的進度:https://github.com/flutter/flutter/projects/188?Android 延遲加載組件對于 Android 版本,使用 Dart 的拆分 AOT 編譯功能,允許 Flutter 應用程序在運行時下載包含提前編譯的代碼和 assets 的模塊。

「將這些可安裝拆分的模塊稱為延遲組件」,通過僅在需要時才推遲下載代碼和 assets ,可以大大減小初始安裝大小,「例如我們實施了 Flutter Gallery 版本初始安裝尺服裝趨勢寸減少了 46 %」

在啟用延遲組件的情況下進行構建時,「Dart 會將僅使用 deferred 關鍵字導入的代碼編譯到單獨的共享庫中,這些共享庫與 assets 一起打包到延遲組件中」目前延遲組件僅在 Android 上可用,并且此功能作為早期預覽版提供,在 flutter.dev 上新的。

Deferred components 頁面中了解如何實現(xiàn)延遲的組件?https://flutter.dev/docs/perf/deferred-componentshttp://github.com/flutter/flutter/issues。

?Flutter Windows UWP AlphaFlu服裝趨勢tter 的另一個更新是針對 PC 的,對Windows UWP 的支持已在移至了 alphaUWP 允許將Flutter 應用程序帶到無法運行標準 Windows 應用程序的設備(包括Xbox)。

要進行嘗試首先需要設置 UWP 先決條件然后切換到 dev 通道并啟用 UWP 支持:$ flutter channel dev$ flutter upgrade$ flutter config — enable

-windows-uwp-desktop啟用后,創(chuàng)建 Flutter 應用程序將包括一個新 winuwp 文件夾,該文件夾可讓在 UWP 容器中構建和運行應用程序:$ flutter cre服裝趨勢ate uwp_fun

$ cd uwp_fun$ flutter pub get$ flutter run -d winuwp因為要構建 Windows UWP 應用程序在 Windows 的沙箱環(huán)境中運行,所以在開發(fā)過程中需要在本地主機上的應用程序防火墻上打一個洞,以啟用諸如熱重載和調試器斷點之類的功能。

可以按照 Flutter 桌面文檔頁面 checknetisolation 上的說明使用命令執(zhí)行此操作,完成此操作后可以在 Windows 上看到 Flutter 應用程序作為 UWP 應用程序運行

當然也可以運行更多有趣的UWP應用,例如在 Xbox 上運行的 Flutter 應用?請查看f服裝趨勢lutter.dev/desktop/#windows-uwp?索尼對 ARM64 Linux 主機的支持Flutter 社區(qū)的另一項杰出成就來自 Sony 的軟件工程師 HidenoriMatsubayashi,他為針對ARM64 Linux 的支持做出了貢獻,通過此 PR 可以在 ARM64 Linux 上構建和運行 Flutter 應用程序。

?https://github.com/flutter/flutter/pull/61221?Flutter 生態(tài)系統(tǒng)和工具更新Flutter Engine 和 Framework 只是整個 Flutter 生態(tài)的一部分,軟件包生態(tài)系統(tǒng)和工具的更新對服裝趨勢 Flutter 開發(fā)人員來說同樣重要。

在生態(tài)系統(tǒng)方面,本次將發(fā)布許多新的 Flutter Favorite 軟件包,以及 FlutterFire(Flutter對 Firebase 的支持)的一些更新,其中 FlutterFire 支持新的 Firebase App Check 預覽,因此 Flutter 開發(fā)人員可以馬上就用到它。

在工具方面,「Flutter DevTools 進行了新的更新以優(yōu)化應用程序的內(nèi)存占用」,并為提供程序包增加了一個新選項卡,另外 「VS Code 和 Android Studio / IntelliJ 的 IDE 插件都有顯著更新」

,并且如果是針對 Flutte服裝趨勢r 的內(nèi)容作者,則可以采用全新的方式將 DartPad 集成到作品中最后有一個名為 FlutterFlow 的新的低代碼應用程序設計和構建工具,該工具針對 Flutter 并在Web上運行,因為它本身是由 Flutter 構建的。

Flutter 最受歡迎的更新作為該版本的一部分,F(xiàn)lutter 生態(tài)系統(tǒng)委員會認證了 24 個新的 Flutter Favorite 軟件包,這是我們迄今為止最大的擴展,新標記的 Flutter 收藏夾包括:

FlutterFire :cloud_firestore,cloud_functions,firebase_auth,firebase_core,firebas服裝趨勢e_crashlytics,firebase_messaging

 和firebase_storage ;?http://firebase.flutter.dev/?社區(qū) plus 包:android_alarm_manager_plus,android_intent_plus

,battery_plus,connectivity_plus,device_info_plus,network_info_plus,package_info_plus,sensors_plus 和 share_plus

;?http://plus.fluttercommunity.dev/?googleapiswin32in服裝趨勢tl 和 charactersSentry packages :sentry和 sentry_flutter

infinite_scroll_pagination和 flutter_native_splash所有這些軟件包都已遷移到空安全的狀態(tài),并視情況支持 Android,iOS 和 Web ?例如:firebase_crashlytics 上沒有底層 SDK,android_alarm_manager_plus 是專門為Android 設計的。

?社區(qū) plus 提供從 Flutter 團隊包的超集例如自 Flutter 最初發(fā)行之前,F(xiàn)lutter 團隊就由Google 的電池組提供了 be服裝趨勢ttery package,并且已遷移至零安全狀態(tài),但僅在 Android 和 iOS 上受支持,而 。

「battery_plus 包另一方面它支持所有六個 Flutter 平臺,包括 Web,Windows,macOS 和 Linux」?九個 “plus” 軟件包都獲得了 Flutter 受歡迎的獎項,這代表了 Flutter 整個社區(qū)在成熟度上邁出的一大步。

?googleapis 插件提供了約 185 個 Google API 的自動生成的 Dart 包裝器,可在客戶端或服務器端 Dart應 用程序(包括Flutter應用程序)中使用win32 程序包是工程學的奇跡,。

「它使用 Dart 服裝趨勢FFI 封裝了大多數(shù)常用的 Win32 API 調用」,以使 Dart 代碼可以直接訪問它們,而無需使用 C 編譯器或 Windows SDK 隨著 Flutter 在 Windows 平臺上的流行,該 win32 軟件包已成為許多流行插件(包括。

path_provider)最流行的插件的關鍵依賴項。作為完整性的測試,作者 timsneath 使用原始 Dart 在原始 Win32 中做了一些有趣的事情,例如實現(xiàn)記事本,蛇和俄羅斯方塊:

?該 win32 軟件包絕對值得一試,看看你是否能夠在 Windows 上使用 Dart 或 Flutter 進行了任何操作?FlutterFire 更新和 F服裝趨勢irebase 應用程序檢查FlutterFire。

 是 Flutter 對 Firebase 的支持,是 Flutter 上最受歡迎的插件集合之一Invertase 在 Flutter 2 版本上投入生產(chǎn)以來一直在進行改進方面做得非常出色實際上自FlutterFire 首次發(fā)布以來,。

Invertase 處理了 79 %的未解決問題,并將未完成的 PR 數(shù)減少了88%此外他們不僅在生產(chǎn)質量插件方面做得很好,而且還將 Beta 質量插件遷移到了零安全性,并使其在同一內(nèi)核上構建和運行,以便開發(fā)者可以混合和匹配。

此外,Invertase 繼續(xù)為 FlutterFire 插件添加新功能,其中包括對該版服裝趨勢本 Flutter 進行的 Flutter 與 Cloud Firebase 集成的許多更新:Typesafe 用于讀取和寫入數(shù)據(jù)的API

支持 Firebase 本地仿真器套件;使用數(shù)據(jù)包優(yōu)化數(shù)據(jù)查詢最后 FlutterFire 支持新 Firebase 產(chǎn)品的 Beta 版本:Firebase App CheckFirebase App Check。

可保護您的后端資源(如 Cloud Storage )免受計費欺詐或網(wǎng)絡釣魚之類的濫用,借助 App Check 運行 Flutter 應用程序的設備,會使用應用程序身份證明提供程序來證明它確實是您的真實應用程序,并且還可以檢查它是否在未受干擾的服裝趨勢真實設備上運行。

?https://firebase.flutter.dev/docs/app-check/overview?Flutter DevTools 更新Flutter DevTools 在此版本中進行了許多值得注意的更新,

「包括兩項內(nèi)存跟蹤改進以及一個僅用于 provider 插件的全新標簽」此版本的 DevTools 中的第一個內(nèi)存跟蹤改進功能,「提供了跟蹤對象分配位置的功能,讓開發(fā)者在代碼中查找內(nèi)存泄漏的位置非常方便。

第二種是「將自定義消息注入到內(nèi)存時間軸的功能,這樣開發(fā)者就可以提供特定于應用程序的標記,例如在完成一些占用大量內(nèi)存的工作之前和之后,以便可以檢查自己是否清理正確」服裝趨勢

?隨著 Flutter 應用的規(guī)模越來越大,我們將繼續(xù)確保 Flutter 開發(fā)人員擁有跟蹤和修復各種內(nèi)存泄漏和運行時問題所需的工具?在使用要跟蹤的 Flutter 框架時,不僅是運行時問題,而且還存在一些其他問題:。

「有時開發(fā)者也想跟蹤與軟件包有關的問題」pub.dev 上有超過 15,000 個與 Flutter 兼容的軟件包和插件,應用隨著時間的推移使用更多軟件包的可能性越來越大考慮到這一點,我們一直在嘗試向 Flutter DevTools 添加新的 “Provider”選項卡。

事實上,這個標簽是由 Remi Roussel 創(chuàng)建,provider 包維護人員如果你正在運行最新版本的服裝趨勢Flutter DevTools,并且正在調試使用 provider 插件的 Flutter 應用程序,則將自動獲得新的“Provider” 選項卡。

“Provider”選項卡向開發(fā)者顯示與每個提供程序相關的數(shù)據(jù),包括「在運行應用程序時的實時更改,它可以讓您直接更改數(shù)據(jù),以測試應用程序的主要情況!」這只是此發(fā)行版中Flutter DevTools中一些很酷的新功能,有關完整列表,請在此處查看各個公告:

Flutter DevTools 2.1 :https://groups.google.com/g/flutter-announce/c/tCreMfJaJFU/m/38p1BBeiCAAJFlu服裝趨勢tter DevTools 2.2.1 :https://groups.google.com/g/flutter-announce/c/t8opLnUyiFQ/m/dJth-jKxAAAJ

Flutter DevTools 2.2.3 :https://groups.google.com/g/flutter-announce/c/t8opLnUyiFQ/m/YX5Ds_q0AgAJIDE插件更新

Flutter 的 Visual Studio Code 和 IntelliJ / Android Studio IDE 擴展也已在此版本中更新,例如 Visual Studio Code 擴展現(xiàn)在支持兩服裝趨勢個附加的 Dart 代碼重構:

「內(nèi)聯(lián)方法和內(nèi)聯(lián)局部變量」。

在 Android Studio / IntelliJ 擴展中,我們添加了「使用選項將所有堆棧跟蹤打印到控制臺的功能」。

DartPad workshops為了確保我們能夠在迅速發(fā)展的 Flutter 開發(fā)人員社區(qū)中準備好文檔,Dart 和 Flutter 團隊一直在尋找改進和擴展創(chuàng)建教育內(nèi)容的方法在此版本中,我們?yōu)?DartPad 添加了一個新的分步 UI,開發(fā)人員可以使用該 UI 跟隨講師指導的講習班。

通過直接向 DartPad 添加說明,我們可以為 I/O 提供指導性的工作室體驗,但是我們不只是為自己的工作室構建它;如果你想在 Da服裝趨勢rt 或 Flutter Workshop 中使用它,可以按照 DartPad Workshop 創(chuàng)作指南進行操作。

?https://github.com/dart-lang/dart-pad/wiki/Workshop-Authoring-Guide?這樣的主旨在于利用 DartPad 共享代碼,并在自己的網(wǎng)站中嵌入 DartPad 。

社區(qū)聚焦:FlutterFlow「FlutterFlow 是一款“低代碼”應用程序設計和開發(fā)工具,可以通過瀏覽器中構建所有應用程序,它提供了一種所見即所得的環(huán)境」,可以使用 Firebase 的真實數(shù)據(jù)跨多個頁面布置你的應用程序。

低代碼工具的目標是輕松完成大多服裝趨勢數(shù)常見的事情,從而開發(fā)者可以編寫盡可能少的自定義代碼行實際上作為演示,他們構建了一個完整的多頁移動應用程序,用于在不到一個小時的時間內(nèi),你可以在YouTube 上看到整個過程。

?https://youtu.be/TXsjnd_4SBo?FlutterFlow 輸出 Flutter 代碼,因此如果需要添加代碼以進一步自定義應用程序,你可以在flutterflow.io 上了解有關 FlutterFlow 產(chǎn)品發(fā)布的信息。

?https://flutterflow.io/blog/launch?重大變化與往常一樣,我們一直努力減少重大更改的數(shù)量,在此版本中,我們已將其限制為消除以下棄用項:73750服裝趨勢 刪除不建議使用的BinaryMessages:https://github.com/flutter/flutter/pull/73750

73751 刪除不推薦使用的 TypeMatcher類 :https://github.com/flutter/flutter/pull/73751概括Play商店中有八分之一以上的新應用是使用 Flutter 構建,僅 Play 商店中有超過 20 萬個Flutter 應用,這樣的持續(xù)增長令人震驚,世界各地各種規(guī)模的應用程序都將其 UI 委托給Flutter,以打造精美的多平臺體驗,以迎合他們所處的任何地方的用戶。

標簽列表