2024-12-27 Flutter 構(gòu)建模式對比debug/release/profile

Profile模式和Release模式使用JIT字節(jié)碼

App 16.5Mb

7.1M fonts
3.7M assets
724K packages
100K NOTICES.Z
24K AssetManifest.json
24K AssetManifest.bin
12K shaders
4.0K FontManifest.json

Debug模式使用AOT機(jī)器碼

App 35Kb

77M kernel_blob.bin
10M isolate_snapshot_data
7.1M fonts
4.4M assets
712K packages
100K NOTICES.Z
24K AssetManifest.json
24K AssetManifest.bin
16K vm_snapshot_data
12K shaders
4.0K FontManifest.json

profile


image.png

debug


image.png

release

image.png

profile模式可以查看真實(shí)的幀渲染性能
使用 profile build 來分析性能。 幀渲染時間在調(diào)試模式下不代表發(fā)布模式的性能。請?jiān)?profile 模式下運(yùn)行應(yīng)用,它仍然保留了有用的調(diào)試信息。

profile模式只能真機(jī)

debug模式支持 flutter inspector 、
更多調(diào)試選項(xiàng):

flutter inspector

Flutter widget inspector 是一個強(qiáng)大的工具,用于可視化和查看 widget 樹。 Flutter 框架層使用 widgets 作為核心構(gòu)建模塊來處理從控件(例如文本、按鈕和切換等)到布局(例如居中、填充、行和列等)的所有內(nèi)容。 Flutter inspector 不僅可以幫助你可視化查看 Flutter widget 樹,還有其他的作用:

了解現(xiàn)有布局
診斷布局問題

更多調(diào)試選項(xiàng)

想要診斷渲染圖層相關(guān)的問題,請先關(guān)閉渲染層。下述的選項(xiàng)將會默認(rèn)啟動。

image.png

想要查看你的應(yīng)用的性能影響,請嘗試以相同的操作重現(xiàn)性能問題。在渲染層關(guān)閉的情況下,于構(gòu)建幀圖表里選擇一個新的構(gòu)建幀,查看它的時間線細(xì)節(jié)。如果光柵線程的時間消耗有顯著降低,那么你禁用的效果的濫用可能是導(dǎo)致卡頓的主要原因。

渲染裁剪的圖層
禁用該選項(xiàng)來檢查已使用的裁剪圖層是否影響了性能。如果禁用后性能有顯著提升,請嘗試減少你的應(yīng)用中裁剪效果的使用。

渲染透明度圖層
禁用該選項(xiàng)來檢查已使用的透明度圖層是否影響了性能。如果禁用后性能有顯著提升,請嘗試減少你的應(yīng)用中透明度效果的使用。

渲染物理形狀圖層
禁用該選項(xiàng)來檢查已使用的物理形狀圖層是否影響了性能,例如陰影和背景特效。如果禁用后性能有顯著提升,請嘗試減少你的應(yīng)用中物理效果的使用。

《提高渲染性能》:
https://docs.flutter.cn/perf/rendering-performance

《使用 Flutter inspector 工具》
https://docs.flutter.cn/tools/devtools/inspector

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容