中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

還不知道Jetpack,你可能趕不上Android開發時代的新腳步

發布時間:2020-08-11 00:42:30 來源:ITPUB博客 閱讀:264 作者:yilian 欄目:移動開發

第一次看文章的朋友可以關注我,會不定期發布Android面試內容、進階專題等等。

有句話說得好“落后就要挨打”,你想不想被淘汰呢?

簡介

谷歌在 2018 I/O 大會上發布了一系列輔助android開發者的實用工具,這套工具就是Jetpack,它是一套庫、工具和指南的合集,可以幫助開發者更輕松地編寫和構建出色的 Android 應用程序。

Jetpack中的有些組件并不是第一次推出,其中LifeCycle、LiveData、ViewModel、Room等組件早在 Google I/O 2017年大會上就隨著 Android Architecture Component(AAC)一起推出了,但是推廣效果一般。時隔一年后谷歌在AAC的基礎之上發布了Jetpack,并發布了其他工具以解決Android技術選型亂以及開發不規范等問題。

Jetpack有以下特點:

  • 加速開發:組件可以單獨采用(不過這些組件是為協同工作而構建的),同時利用 Kotlin 語言功能幫助您提高工作效率。
  • 消除樣板代碼:Jetpack 可管理繁瑣的 Activity(如后臺任務、導航和生命周期管理)。
  • 構建高質量的強大應用:Jetpack 組件圍繞現代化設計實踐構建而成,具有向后兼容性,可以減少崩潰和內存泄漏。

Jetpack分類

Android Jetpack組件共分為四大類,Foundation、Architecture、Behavior和UI。

Foundation(基礎組件):

基礎組件提供了橫向功能,例如向后兼容性、測試以及Kotlin語言的支持。它包含如下組件庫:

  • Android KTX:Android KTX 是一組 Kotlin 擴展程序,它優化了供Kotlin使用的Jetpack和Android平臺的API。以更簡潔、更愉悅、更慣用的方式使用Kotlin進行Android開發。
  • AppCompat:提供了一系列以AppCompat開頭的API,以便兼容低版本的Android開發。
  • Cars(Auto):有助于開發 Android Auto 應用的組件,無需擔心特定于車輛的硬件差異(如屏幕分辨率、軟件界面、旋鈕和觸摸式控件)。
  • Benchmark(檢測):從 Android Studio 中快速對基于 Kotlin 或 Java 的代碼進行基準化分析。衡量代碼性能,并將基準化分析結果輸出到 Android Studio 控制臺。
  • Multidex(多Dex處理):為方法數超過 64K 的應用啟用多 dex 文件。
  • Security(安全):按照安全最佳做法讀寫加密文件和共享偏好設置。
  • Test(測試):用于單元和運行時界面測試的 Android 測試框架。
  • TV:構建可讓用戶在大屏幕上體驗沉浸式內容的應用。
  • Wear OS:有助于開發 Wear 應用的組件。
Architecture(架構組件):

架構組件可幫助開發者設計穩健、可測試且易維護的應用。它包含如下組件庫:

  • Data Binding(數據綁定):數據綁定庫是一種支持庫,借助該庫,可以使用聲明式將布局中的界面組件綁定到應用中的數據源。
  • Lifecycles:方便管理 Activity 和 Fragment 生命周期,幫助開發者書寫更輕量、易于維護的代碼。
  • LiveData:是一個可觀察的數據持有者類。與常規observable不同,LiveData是有生命周期感知的。
  • Navigation:處理應用內導航所需的一切。
  • Paging:幫助開發者一次加載和顯示小塊數據。按需加載部分數據可減少網絡帶寬和系統資源的使用。
  • Room:Room持久性庫在SQLite上提供了一個抽象層,幫助開發者更友好、流暢的訪問SQLite數據庫。
  • ViewModel:以生命周期感知的方式存儲和管理與UI相關的數據。
  • WorkManager:即使應用程序退出或設備重新啟動,也可以輕松地調度預期將要運行的可延遲異步任務。

谷歌推薦的應用架構:

還不知道Jetpack,你可能趕不上Android開發時代的新腳步

Behavior(行為):

行為組件可幫助開發者的應用與標準 Android 服務(如通知、權限、分享和 Google 助理)相集成。它包含如下組件庫:

  • CameraX:幫助開發者簡化相機應用的開發工作。它提供一致且易于使用的 API 界面,適用于大多數 Android 設備,并可向后兼容至 Android 5.0(API 級別 21)。
  • DownloadManager(下載管理器):可處理長時間運行的HTTP下載,并在出現故障或在連接更改和系統重新啟動后重試下載。
  • Media & playback(媒體&播放):用于媒體播放和路由(包括 Google Cast)的向后兼容 API。
  • Notifications(通知):提供向后兼容的通知 API,支持 Wear 和 Auto。
  • Permissions(權限):用于檢查和請求應用權限的兼容性 API。
  • Preferences(偏好設置):提供了用戶能夠改變應用的功能和行為能力。
  • Sharing(共享):提供適合應用操作欄的共享操作。
  • Slices(切片):創建可在應用外部顯示應用數據的靈活界面元素。
UI(界面組件):

界面組件可提供各類view和輔助程序,讓應用不僅簡單易用,還能帶來愉悅體驗。它包含如下組件庫:

  • Animation & Transitions(動畫&過度):提供各類內置動畫,也可以自定義動畫效果。
  • Emoji(表情符號):使用戶在未更新系統版本的情況下也可以使用表情符號。
  • Fragment:組件化界面的基本單位。
  • Layout(布局):xml書寫的界面布局或者使用Compose完成的界面。
  • Palette(調色板):從調色板中提取出有用的信息。

使用Jetpack

目前Jetpack組件已經包含在AndroidX中,所以如果項目以及遷移到了AndroidX了,就不需要額外導包。如果沒有兼容AndroidX 那么需要在gradle中進行配置:

打開項目的build.gradle添加google()代碼庫,如下:

allprojects {
    repositories {
        google()
        jcenter()
    }}復制代碼

比如只是單純的使用Lifecycle,那么打開app的build.gradle 進行依賴的添加:

implementation "android.arch.lifecycle:runtime:$lifecycle_version"annotationProcessor "android.arch.lifecycle:compiler:$lifecycle_version"implementation "android.arch.lifecycle:common-java8:$lifecycle_version"復制代碼

總結

本篇文章主要介紹了Jetpack組件的由來以及分類,詳細解釋了每一個細分組件的含義。讓大家對Jetpack有充分的了解,每一個組件都可以單獨或者組合使用。

還有Java語言進階與內核、Android進階、移動架構師項目、微信小程序員開發、跨平臺flutter開發等學習視頻

還不知道Jetpack,你可能趕不上Android開發時代的新腳步 Android學習PDF_源碼筆記_面試文檔_進階視頻.pdf

還不知道Jetpack,你可能趕不上Android開發時代的新腳步

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长治县| 杂多县| 遵义县| 屏山县| 修文县| 甘洛县| 吉隆县| 恭城| 岚皋县| 莫力| 清远市| 新郑市| 阿拉善右旗| 庆云县| 西贡区| 临沭县| 乐亭县| 荥阳市| 锦屏县| 武强县| 哈尔滨市| 镇坪县| 宁化县| 米脂县| 静海县| 池州市| 西昌市| 海南省| 平武县| 盈江县| 黄平县| 红河县| 石首市| 咸宁市| 苏州市| 抚远县| 隆尧县| 噶尔县| 宜昌市| 威宁| 丘北县|