Jetpack là một tập hợp thư viện giúp các nhà phát triển làm theo những phương pháp hay nhất, giảm bớt mã nguyên mẫu và viết mã có khả năng hoạt động nhất quán trên các phiên bản và thiết bị Android. Từ đó, nhà phát triển có thể tập trung vào những mã họ quan tâm.
Jetpack Compose
Một bộ công cụ hiện đại để xây dựng giao diện người dùng gốc, giúp bạn đơn giản hoá và đẩy nhanh quá trình phát triển giao diện người dùng trên Android.

Tại sao nên dùng Android Jetpack?

Được xây dựng dựa trên những phương pháp thiết kế hiện đại, các thư viện của Android Jetpack giúp hạn chế sự cố và tình trạng rò rỉ bộ nhớ nhờ tích hợp khả năng tương thích ngược.
Android Jetpack quản lý các hoạt động tẻ nhạt, chẳng hạn như quản lý vòng đời, thao tác điều hướng và tác vụ trong nền để bạn có thể tập trung vào những điểm mạnh của ứng dụng.
Giảm bớt sự phức tạp nhờ những thư viện hoạt động nhất quán trên các phiên bản và thiết bị Android.

* Các thư viện phổ biến và thường dùng nhất được liệt kê trước

activity *Truy cập vào các API có thể kết hợp, được xây dựng dựa trên Hoạt động.
appcompat *Cho phép truy cập vào API mới trên các phiên bản API cũ của nền tảng (nhiều phiên bản sử dụng Material Design).
appsearch *Xây dựng các chức năng tìm kiếm tuỳ chỉnh trong ứng dụng cho người dùng.
máy ảnh *Tạo ứng dụng máy ảnh dành cho thiết bị di động.
compose *Xác định giao diện người dùng theo cách lập trình bằng các hàm có khả năng kết hợp giúp mô tả các phần phụ thuộc dữ liệu và hình dạng của giao diện.
databinding *Liên kết các thành phần của giao diện người dùng trong bố cục với các nguồn dữ liệu trong ứng dụng bằng định dạng khai báo.
fragment *Phân chia ứng dụng thành nhiều màn hình độc lập được lưu trữ trong một Hoạt động.
hilt *Mở rộng chức năng của Dagger Hilt để bật tính năng chèn phần phụ thuộc của một số lớp trong thư viện androidx.
lifecycle *Tạo các thành phần nhận biết được vòng đời có thể điều chỉnh hoạt động dựa trên trạng thái vòng đời hiện tại của một hoạt động hoặc một mảnh.
Các thành phần của Material Design * Các thành phần theo mô-đun và có thể tuỳ chỉnh của giao diện người dùng Material Design dành cho Android.
navigation *Xây dựng và lập cấu trúc cho giao diện người dùng trong ứng dụng, xử lý các đường liên kết sâu và di chuyển giữa các màn hình.
paging *Tải dữ liệu trong các trang rồi hiển thị dữ liệu đó ở chế độ RecyclerView.
room *Tạo, lưu trữ và quản lý dữ liệu cố định dựa trên cơ sở dữ liệu SQLite.
test *Thử nghiệm trong Android.
work *Lên lịch và thực thi các tác vụ trong nền có thể trì hoãn và có giới hạn.
adsLấy mã nhận dạng cho quảng cáo (có hoặc không có Dịch vụ Play).
annotationHiển thị siêu dữ liệu nhằm giúp công cụ và các nhà phát triển khác biết được mã của ứng dụng.
arch.coreTrình trợ giúp cho các phần phụ thuộc arch khác, bao gồm cả các quy tắc thử nghiệm JUnit có thể dùng với LiveData.
asynclayoutinflaterThêm các bố cục một cách không đồng bộ để tránh hiện tượng giật trong giao diện người dùng.
autofillCải thiện độ chính xác của tính năng tự động điền bằng cách mở rộng gợi ý.
benchmarkĐo lường chính xác hiệu quả của mã trong Android Studio.
biometricXác thực bằng hệ thống nhận dạng sinh trắc học hoặc thông tin xác thực thiết bị và thực hiện các thao tác mã hoá.
bluetoothSử dụng các tính năng Bluetooth của nền tảng Android với các API có khả năng tương thích ngược.
browserHiển thị trang web trong trình duyệt mặc định của người dùng.
camera.media3VIỆC CẦN LÀM
camera.viewfinderKính ngắm độc lập và Kính ngắm dựa trên Khung hiển thị cho Máy ảnh"
car-appTạo ứng dụng mẫu cho Android Auto và Android Automotive OS.
cardviewTriển khai mẫu thẻ Material Design với các góc bo tròn và bóng đổ.
collectionGiảm tác động của bộ sưu tập hiện có và bộ sưu tập mới (có kích thước nhỏ) lên bộ nhớ.
compose.animationTạo ảnh động trong các ứng dụng Jetpack Compose để làm phong phú trải nghiệm người dùng.
compose.compilerBiến đổi các hàm @Composable và hỗ trợ hoạt động tối ưu hoá bằng trình biên dịch bổ trợ Kotlin.
compose.foundationViết ứng dụng Jetpack Compose bằng các khối dựng có sẵn, cũng như mở rộng nền tảng để xây dựng các thành phần của hệ thống thiết kế của riêng bạn.
compose.materialXây dựng các giao diện người dùng Jetpack Compose bằng các thành phần Material Design có sẵn. Đây là điểm truy cập cấp cao hơn của Compose, được thiết kế nhằm cung cấp các thành phần theo như mô tả trên trang web www.material.io.
compose.material3Xây dựng giao diện người dùng Jetpack Compose bằng các thành phần Material Design 3, phiên bản cải tiến tiếp theo của Material Design. Material 3 có khả năng tuỳ chỉnh giao diện cập nhật, cũng như các thành phần và tính năng cá nhân hoá Material You, chẳng hạn như màu động. Công cụ này được thiết kế để phù hợp với phong cách đồ hoạ và giao diện người dùng hệ thống mới trên Android 12.
compose.material3.adaptiveSử dụng thư viện thích ứng Material 3 để tạo giao diện người dùng thích ứng sẽ tự động điều chỉnh theo cấu hình cửa sổ hiện tại, chẳng hạn như các lớp kích thước cửa sổ hoặc tư thế thiết bị. Thư viện này cung cấp cả các phương thức triển khai mặc định của giàn giáo và các thành phần kết hợp cần thiết của khối xây dựng để tạo trải nghiệm tuỳ chỉnh của riêng bạn.
compose.runtimeCác khối dựng cơ bản cho mô hình lập trình và tính năng quản lý trạng thái của Compose, đồng thời là thời gian chạy cốt lõi để trình biên dịch bổ trợ Compose nhắm đến.
compose.uiCác thành phần cơ bản của giao diện người dùng Compose cần thiết để tương tác với thiết bị, bao gồm cả bố cục, bản vẽ và phương thức nhập.
concurrentĐưa các tác vụ ra khỏi luồng chính bằng coroutine và tận dụng ListenableFuture.
constraintlayoutĐịnh vị và đặt kích thước cho các tiện ích một cách linh hoạt nhờ vị trí tương đối.
contentpagerTải và dàn trang cho dữ liệu ContentProvider trong luồng nền.
coordinatorlayoutĐịnh vị các tiện ích ứng dụng cấp cao nhất, chẳng hạn như AppBarLayout và FloatingActionButton.
coreHướng đến các tính năng và API mới nhất trên nền tảng đồng thời vẫn hỗ trợ các thiết bị cũ.
core.uwbTriển khai UWB (băng tần siêu rộng) trên các thiết bị được hỗ trợ.
credentials Thư viện này cung cấp quyền truy cập hợp nhất vào thông tin xác thực của người dùng. Thông tin này có thể bao gồm mật khẩu, mã xác thực và thông tin xác thực được liên kết. Bạn nên sử dụng thư viện này để cung cấp trải nghiệm đăng nhập liền mạch và an toàn.
credentials.registryĐể giải quyết những vấn đề này, chúng tôi sẽ thêm một cơ chế đăng ký mới cho phép ứng dụng cung cấp thông tin xác thực kỹ thuật số theo cách bảo vệ quyền riêng tư. Ở cấp độ cao, ứng dụng của nhà cung cấp sẽ đăng ký trước tất cả thông tin xác thực kỹ thuật số đề xuất của họ với Trình quản lý thông tin xác thực; Khi Trình quản lý thông tin xác thực nhận được yêu cầu của ứng dụng về một thông tin xác thực kỹ thuật số cụ thể, trình quản lý này sẽ chạy giao diện người dùng so khớp thông tin xác thực và bộ chọn người dùng trong hộp cát.
cursoradapterHiển thị dữ liệu Con trỏ cho tiện ích ListView.
customviewTriển khai các chế độ xem tuỳ chỉnh.
datastoreLưu trữ dữ liệu một cách không đồng bộ, có tính nhất quán và dựa trên giao dịch, giúp khắc phục một số hạn chế của SharedPreferences
documentfileXem tài liệu tệp.
draganddropChấp nhận dữ liệu kéo và thả từ ứng dụng khác hoặc trong cùng một ứng dụng, cũng như hiển thị một mục tiêu thả xuống nhất quán.
drawerlayoutTriển khai tiện ích ngăn kéo Material Design.
dynamicanimationTạo hoạt ảnh mượt với API hoạt ảnh dựa trên vật lý.
emojiHiển thị biểu tượng cảm xúc trên các thiết bị hiện thời và thiết bị cũ.
emoji2Hiển thị biểu tượng cảm xúc trên các thiết bị hiện thời và thiết bị cũ.
enterpriseTạo ứng dụng phù hợp với doanh nghiệp.
exifinterfaceĐọc và ghi các thẻ EXIF của tệp hình ảnh.
gamesSử dụng SDK cho trò chơi Android trong chính ứng dụng của bạn để thực hiện các tác vụ phức tạp trong trò chơi, chẳng hạn như điều chỉnh tốc độ khung hình.
glanceXây dựng bố cục cho các nền tảng từ xa bằng API kiểu Jetpack Compose.
graphicsTận dụng cơ sở đồ hoạ trên nhiều bản phát hành của nền tảng Android
gridlayoutTriển khai bố cục lưới.
healthTạo các ứng dụng theo dõi sức khoẻ hiệu quả cao theo cách không phân biệt nền tảng.
health.connectCho phép nhà phát triển đọc hoặc ghi hồ sơ sức khoẻ và thể chất của người dùng.
heifwriterMã hoá hình ảnh hoặc bộ sưu tập hình ảnh ở định dạng HEIF bằng các bộ mã hoá và giải mã có sẵn trên thiết bị Android.
mực inTruyền cảm hứng cho các ứng dụng bút cảm ứng hàng đầu. Giảm rào cản gia nhập cho nhà phát triển để có trải nghiệm viết tay đẹp mắt, hiệu suất cao.
inputGiảm độ trễ của hoạt động tương tác đầu vào bằng cách dự đoán MotionEvents trong tương lai
interpolatorSử dụng bộ nội suy ảnh động trên các nền tảng cũ.
javascriptengineCho phép ứng dụng Android đánh giá JavaScript.
jetifierMột công cụ độc lập giúp di chuyển các phần phụ thuộc trên một thư viện ngừng hoạt động sang các phần phụ thuộc AndroidX tương đương.
leanbackHãy sử dụng Compose cho TV thay vì cấu phần phần mềm này.
legacyCấu phần phần mềm này và các lớp trong đó sẽ không dùng được nữa. Kể từ Android 8, các hạn chế trong quy trình kiểm tra lai lịch khiến cho lớp này không còn hữu ích nữa.
tìm lỗi mã nguồnKiểm tra tìm lỗi mã nguồn để xác minh việc sử dụng API Gradle
loaderTải dữ liệu còn lại (sau khi thay đổi cấu hình) cho giao diện người dùng.
localbroadcastmanagerCấu phần phần mềm này và các lớp trong đó sẽ không dùng được nữa. Thay vào đó, hãy dùng LiveData hoặc luồng phản ứng.
mediaChia sẻ nội dung nghe nhìn và bộ điều khiển với các ứng dụng khác. Đã được thay thế bằng media3.
media2Chia sẻ nội dung nghe nhìn và bộ điều khiển với các ứng dụng khác.
media3 *Các thư viện hỗ trợ cho trường hợp sử dụng liên quan đến nội dung nghe nhìn.
mediarouterCho phép hiển thị và phát nội dung nghe nhìn trên các thiết bị nhận từ xa bằng một giao diện người dùng phổ biến.
multidexTriển khai các ứng dụng có nhiều tệp dex trên các thiết bị chạy phiên bản trước Android 5.
metricsTheo dõi và báo cáo nhiều chỉ số thời gian chạy cho ứng dụng
paletteTrích xuất bảng màu đại diện từ hình ảnh.
pdfThư viện để thêm các tính năng xem tệp PDF bên trong ứng dụng.
percentlayoutCấu phần phần mềm này và các lớp trong đó sẽ không dùng được nữa. Thay vào đó, dùng ConstraintLayout và các bố cục liên quan.
preferenceXây dựng màn hình cài đặt mang tính tương tác mà không cần tương tác với bộ nhớ thiết bị hay quản lý giao diện người dùng.
printIn ảnh, tài liệu, hình ảnh và đồ hoạ khác qua ứng dụng.
privacysandbox.activityVIỆC CẦN LÀM
privacysandbox.adsThư viện này cho phép tích hợp với Privacy Preserving API (API Bảo đảm quyền riêng tư) thuộc Hộp cát về quyền riêng tư trên Android.
privacysandbox.pluginsTrình bổ trợ Gradle cho Thư viện Sdk của Hộp cát về quyền riêng tư của Android
privacysandbox.sdkruntimeThư viện này cung cấp các thành phần cho thành phần tiêu thụ nhận biết SdkRuntime
privacysandbox.toolsThư viện để sử dụng chức năng Hộp cát về quyền riêng tư trong Android
privacysandbox.uiVIỆC CẦN LÀM
profileinstallerCho phép các thư viện điền trước dấu vết tổng hợp mà ART sẽ đọc.
recommendationQuảng bá nội dung trên màn hình chính của Trình chạy Android TV.
recyclerviewHiển thị tập dữ liệu lớn trong giao diện người dùng của bạn, đồng thời giảm thiểu mức sử dụng bộ nhớ.
remotecallbackTạo một trình bao bọc giúp các nhà phát triển dễ cung cấp PendingIntent hơn.
resourceinspectionHiển thị các thuộc tính của chế độ xem tuỳ chỉnh trong Live Layout Inspector của Android Studio.
savedstateViết các thành phần thay thế được để lưu trạng thái giao diện người dùng khi một quy trình ngừng hoạt động và khôi phục trạng thái này khi quy trình đó bắt đầu lại.
securityQuản lý an toàn các khoá, đồng thời mã hoá tệp và phần sharedpreferences.
sharetargetCung cấp khả năng tương thích ngược để sử dụng các phím tắt làm mục tiêu chia sẻ trực tiếp.
sliceHiển thị các thành phần trên giao diện người dùng theo mẫu bên ngoài ứng dụng.
slidingpanelayoutTriển khai mẫu giao diện người dùng dạng ngăn trượt.
startupTriển khai một cách đơn giản, hiệu quả để khởi chạy các thành phần khi khởi động ứng dụng.
sqliteThao tác với các cơ sở dữ liệu SQLite cục bộ. Nếu có thể, hãy dùng Room.
swiperefreshlayoutTriển khai mẫu giao diện người dùng vuốt để làm mới.
test.uiautomatorKhung kiểm thử chức năng trên giao diện người dùng của nhiều ứng dụng
textclassifierXác định các cuộc trò chuyện, đường liên kết, mục lựa chọn và các cấu trúc tương tự khác trong văn bản.
tracingGhi các sự kiện theo dõi vào vùng đệm theo dõi hệ thống.
transitionHoạt hoá chuyển động trong giao diện người dùng với bố cục bắt đầu và kết thúc.
tvCung cấp cho nhà phát triển các chức năng Compose và Material Design để viết ứng dụng cho TV
tvproviderCung cấp các kênh Android TV.
xr.arcoreĐưa nội dung kỹ thuật số vào thế giới thực bằng các khả năng nhận thức.
xr.composeTạo bố cục giao diện người dùng không gian theo cách khai báo để tận dụng các tính năng không gian của Android XR.
xr.compose.material3Xây dựng bằng các thành phần và bố cục Material thích ứng với XR
xr.runtimeBắt đầu phiên AR hoặc 3D tuỳ chỉnh bằng thời gian chạy gốc của chúng tôi.
xr.scenecoreTạo và thao tác với biểu đồ cảnh Android XR bằng nội dung 3D.
vectordrawableKết xuất đồ hoạ vectơ.
versionedparcelableCung cấp định dạng chuyển đổi tuần tự nhị phân ổn định và nhỏ gọn, có thể truyền qua các quy trình hoặc tồn tại cố định một cách an toàn.
viewpagerHiển thị Chế độ xem hoặc Mảnh ở định dạng vuốt được. Nếu có thể, hãy dùng viewpager2.
viewpager2Hiển thị Chế độ xem hoặc Mảnh ở định dạng vuốt được.
wearTạo ứng dụng cho đồng hồ thông minh chạy Wear OS by Google.
wear.composeViết các ứng dụng sử dụng công cụ Jetpack Compose cho thiết bị đeo bằng cách cung cấp chức năng để hỗ trợ các thiết bị, kích thước, hình dạng và cử chỉ điều hướng dành riêng cho thiết bị đeo.
wear.protolayoutThư viện này cho phép xác định một tập hợp các bố cục của giao diện người dùng và các biểu thức không phải giao diện người dùng được kết xuất/đánh giá trên các nền tảng từ xa.
wear.tilesTạo ứng dụng cho đồng hồ thông minh chạy Wear OS by Google.
wear.watchfaceTạo ứng dụng cho đồng hồ thông minh chạy Wear OS by Google.
webkitHoạt động với API WebView hiện đại trên Android 5 trở lên.
windowGiúp hỗ trợ nhiều kiểu dáng thiết bị, chẳng hạn như các thiết bị có thể gập lại.
window.extensions.coreCore API (API Lõi) cho Tiện ích thư viện trình quản lý cửa sổ

Tìm hiểu cách sử dụng Jetpack

Tìm hiểu những thư viện Jetpack thiết yếu trong khoá học Kiến thức cơ bản về Compose trên Android để giảm bớt mã nguyên mẫu trong ứng dụng
Thực hành với 3 thư viện Jetpack giúp đơn giản hoá lớp dữ liệu của bạn: LiveData, ViewModel và Room
Khám phá cách sử dụng kết hợp các thư viện Jetpack phổ biến nhất trong ứng dụng phiên bản chính thức

Tin tức và video