国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基準配置文件將應用啟動時間縮短最高40%

谷歌開發者 ? 來源:谷歌開發者 ? 作者:谷歌開發者 ? 2022-03-11 09:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

啟動時間的重要性

應用性能和用戶參與度的相關性在許多應用中都有所體現。用戶希望應用響應迅速且能快速加載,而啟動時間就是衡量應用性能和質量的主要指標之一。

我們的一些合作伙伴已經投入大量時間和資源來優化應用啟動情況。例如,您可以閱讀了解 Facebook 的優化歷程。

本文我們將討論基準配置文件和其改善應用和開發庫性能的方式,包括它們如何將啟動時間縮短了最高 40%。雖然本文側重于應用啟動,但是基準配置文件也可以極大改善卡頓情況。

回顧

Android 9 (API 級別 28) 在 Play Cloud 中引入了 ART 優化配置文件,以縮短應用啟動時間。在云配置文件可用時,我們看到應用的冷啟動在不同設備上平均快了至少 15%。

配置文件的工作原理

當應用在安裝或更新后首次啟動時,它的代碼以解釋模式運行,直到被 JIT。由于存儲和加載完全編譯的應用所需的開銷較大,自 Android 6 開始,Java 和 Kotlin 代碼在 APK 中編譯為 dex 字節碼,而不是完全編譯為機器代碼。應用中經常被使用以及用于應用啟動的類和方法,都會被寫入配置文件。一旦設備進入閑置模式,ART 就基于這些配置文件編譯應用,以加快后續的應用啟動。

從 Android 9 (API 級別 28) 開始,Google Play 也會提供云配置文件。當應用在設備上運行時,ART 生成的配置文件由 Play 商店應用上傳并在云端聚合。為應用上傳了足夠的配置文件后,Play 應用將使用聚合的配置文件來進行后續的安裝。

存在的問題

雖然云配置文件在可用時很有幫助,但并非總是在應用安裝后即可使用。收集和聚合配置文件通常要幾天時間,而許多應用會每周更新,這就是問題所在。而且許多用戶會在云配置文件可用之前安裝更新。Google Android 團隊開始尋找其他方法來改善配置文件延遲。

解決方案

基準配置文件是提供配置文件的一個全新機制,可在 Android 7 (API 級別 24) 和更高版本上使用。基準配置文件是由 Android Gradle 插件生成的 ART 配置文件,使用可由應用和庫提供的人類可讀懂的配置文件格式。示例如下:?

HSPLandroidx/compose/runtime/ComposerImpl;->updateValue(Ljava/lang/Object;)VHSPLandroidx/compose/runtime/ComposerImpl;->updatedNodeCount(I)IHLandroidx/compose/runtime/ComposerImpl;->validateNodeExpected()VPLandroidx/compose/runtime/CompositionImpl;->applyChanges()VHLandroidx/compose/runtime/ComposerKt;->findLocation(Ljava/util/List;I)I

二進制文件存儲在 APK 資源目錄中的特定位置 (assets/dexopt/baseline.prof)。

基準配置文件在構建時創建,作為 APK 的一部分發送到 Play 中,然后在下載應用時,從 Play 發送至用戶。基準配置文件在云配置文件尚不可用時,填補了 ART 云配置文件流水線中的空白,在云配置文件可用時,則會自動與其合并。基準配置文件最大的優勢之一是可以在本地開發和評估,這樣開發者可以看到真實的最終用戶性能改進情況。它們還支持較低的 Android 版本 (7 和更高版本),而云配置文件只在 Android 9 及以上版本中提供。

影響

應用開發者

2021 年初,Google 地圖的發布周期從兩周改為一周。更頻繁的更新意味著更頻繁地舍棄本地預編譯,以及更多用戶在沒有 Play Cloud 配置文件的情況下,遇到啟動緩慢的情況。通過使用基準配置文件,Google 地圖將平均啟動時間縮短了 30%,搜索速度相應增長了 2.4%,對于這樣一個成熟的應用來說,這是巨大的性能改進。

庫開發者

庫中的代碼與應用中的代碼類似,默認都不是完全編譯,如果它在啟動的關鍵路徑中發揮重要作用,則可能存在問題。

Jetpack Compose 是一個不屬于 Android 系統映像的界面庫,因此與大多數 Android 視圖工具包代碼不同,它在安裝時并未完全編譯。這導致了性能問題,尤其是在應用前幾次冷啟動時。

為解決這一問題,Compose 使用了配置文件安裝程序。該程序附帶了基準配置文件規則,可以縮短 Compose 應用的啟動時間并減少卡頓。

Google Play 商店的搜索結果頁已經使用 Compose 進行重寫。在集成 Compose 的基準配置文件規則后,渲染初始搜索結果頁 (包括圖像) 的時間縮短了約 40%。

Android 團隊還將基準配置文件添加到了相關的 AndroidX 庫。這可讓所有使用這些庫的 Android 應用受益。ConstraintLayout 發現附帶的配置文件規則將動畫幀時間縮短了超過 1 毫秒。

如何使用基準配置文件

創建自定義基準配置文件

所有應用和庫開發者都可以從添加基準配置文件中獲益。理想狀態下,開發者為最關鍵的用戶旅程創建配置文件,來確保不管云配置文件是否可用,這些旅程都擁有始終快速的性能。您可以查看詳細指南,了解如何為應用和庫開發者設置基準配置文件。

更新依賴項

如果您還未準備好為應用生成基準配置文件,您仍然可以受益于更新依賴項。如果您使用 Android Gradle 插件 7.1.0-alpha05 或更高版本構建應用,您將獲得包含在 APK 中的基準配置文件,這些配置文件已經由庫 (例如 Jetpack) 提供。Google Play 在安裝時借助這些配置文件編譯應用。您可以將這些配置文件作為構建應用的補充部分。

衡量改進情況

不要忘記衡量應用改進情況。您可以按照步驟操作,了解如何在本地衡量使用生成的配置文件的啟動情況,也歡迎您持續關注我們了解更多最新內容。

原文標題:通過基準配置文件改善應用性能

文章出處:【微信公眾號:谷歌開發者】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Android
    +關注

    關注

    12

    文章

    4026

    瀏覽量

    133990
  • 工作原理
    +關注

    關注

    4

    文章

    298

    瀏覽量

    38641

原文標題:通過基準配置文件改善應用性能

文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    以“網關中間件”實現充電樁OCPP 1.6安全配置文件無縫升級

    深圳惠志科技有限公司推出的OCPP安全代理網關采用"網關中間件"架構,在充電樁與云端CSMS之間透明地部署,實現充電樁OCPP 1.6協議安全配置文件從Profile 0/1到Profile 2/3的無縫升級,而無需觸及樁端硬件與固件。
    的頭像 發表于 02-04 11:56 ?805次閱讀
    以“網關中間件”實現充電樁OCPP 1.6安全<b class='flag-5'>配置文件</b>無縫升級

    縮短啟動時間的定制支持成為采用關鍵——持續選用Silex希來科無線模塊逾十年

    縮短啟動時間的定制支持成為采用關鍵——持續選用Silex希來科無線模塊逾十年
    的頭像 發表于 12-14 15:11 ?1207次閱讀
    <b class='flag-5'>縮短</b><b class='flag-5'>啟動時間</b>的定制支持成為采用關鍵——持續選用Silex希來科無線模塊逾十年

    配置文件損壞可能會帶來哪些安全風險?

    配置文件損壞不僅會導致電能質量在線監測裝置功能異常,還可能引發 數據安全、運維安全、設備安全、合規安全 四大類安全風險,尤其在電力系統、工業配電等關鍵場景中,風險可能傳導至電網或生產系統,造成
    的頭像 發表于 12-10 16:37 ?424次閱讀
    <b class='flag-5'>配置文件</b>損壞可能會帶來哪些安全風險?

    DCDC芯片TPS54620的緩啟動時間仿真

    以下以DCDC芯片TPS54620為例對緩啟動時間進行仿真。
    的頭像 發表于 12-02 15:20 ?565次閱讀
    DCDC芯片TPS54620的緩<b class='flag-5'>啟動時間</b>仿真

    求助各位大佬,關于如何讀寫編碼格式為UTF-16LE的配置文件

    如題,小白求助各位大佬,要怎么實現對編碼為UTF-16LE的配置文件的讀寫。 使用讀配置文件的vi讀不出內容。 使用讀文本的方式寫入異常,文件的編碼變成UTF-8且內容也不對。
    發表于 09-14 12:54

    是否有可能使用CYSPP配置文件連接到外圍設備?

    我們的現有系統使用中央和外圍設備,使用基于 Microchip RN4020 的中央和外圍設備。 由于供應限制的原因,我們希望英飛凌 CYBT-483056 SoC 用于 BLE central。 我們想知道是否有可能使用CYSPP配置文件連接到外圍設備? 或任何其他請
    發表于 07-07 06:17

    如何才能知道英飛凌Bluetooth?產品支持哪種Bluetooth?配置文件和版本?

    如何才能知道英飛凌Bluetooth?產品支持哪種Bluetooth?配置文件和版本? A2DP、AVRCP、HSP、HFP 等 是否有一個網頁或文檔解釋每個設備支持哪些配置文件和版本? 目前我想了解以下設備特別支持的配置文件
    發表于 06-27 06:04

    寬溫啟動失敗?聚徽揭秘防爆顯示屏-40℃低溫啟動的加熱膜配置技術

    防爆顯示屏的低溫啟動難題,解析加熱膜配置的核心技術,為工業場景提供可靠解決方案。 一、低溫啟動失敗的核心挑戰 1. 液晶材料性能衰減 在-40℃環境下,液晶材料粘度增加,響應
    的頭像 發表于 06-18 16:17 ?901次閱讀

    配置文件的差異介紹

    配置文件的差異 FA模型應用在config.json文件中描述應用的基本信息,一個應用工程中可以創建多個Module,每個Module中都有一份config.json文件。config.json由
    發表于 06-05 06:50

    UIAbility組件啟動模式:實例在啟動時的不同呈現狀態

    ()和onWindowStageCreate()生命周期回調。 如果需要使用singleton啟動模式,在module.json5配置文件中的launchType字段配置為singleton即可。 {"
    發表于 05-16 06:10

    系統啟動時間優化方案--基于米爾MYD-YG2LX開發板

    的接口和到內核配置文件中屏蔽掉一些不需要的驅動配置,例如: 使用Bootgraph分析內核啟動的調用時間,移除花費時間長的驅動和優化需要使
    發表于 05-09 18:03

    如何減少dsp啟動時間

    如何減少dsp啟動時間?之前圖中Boot code(-bcode)設置為0x1時,DSP啟動時間大概為9秒。設置為0x2后,DSP的啟動時間大概為1秒。對于Boot code(-bcode)設置為不同的值有什么不同的含義,有相關
    發表于 04-15 06:14

    請問MPC5748G如何減少啟動時間

    我正在使用 MCP5748G。通電后大約需要 100 多毫秒才能正常工作。 正常啟動時間是多少毫秒?如何減少啟動時間
    發表于 04-10 07:31

    Profibus DP主站轉Modbus TCP網關配置文件制作

    Profibus DP主站轉Modbus TCP網關配置文件制作
    的頭像 發表于 04-02 13:06 ?760次閱讀
    Profibus DP主站轉Modbus TCP網關<b class='flag-5'>配置文件</b>制作

    UCC28740-Q1 汽車級超低待機反激式控制器,集成 HV 啟動和光耦合器反饋技術資料

    UCC28740-Q1 隔離式反激式電源控制器使用光耦合器調節輸出,以提供對大負載階躍的快速瞬態響應。 內部 700V 啟動開關、動態控制的工作狀態和定制的調制配置文件支持超低待機功率,而不會犧牲啟動時間或輸出瞬態響應。
    的頭像 發表于 03-21 13:43 ?1250次閱讀
    UCC28740-Q1 汽車級超低待機反激式控制器,集成 HV <b class='flag-5'>啟動</b>和光耦合器反饋技術資料