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 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.
car-appTạo ứng dụng theo mẫu dành 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.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.
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.
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.
leanbackViết ứng dụng cho thiết bị Android TV bằng các tiện ích và đoạn mẫu thân thiện với dpad.
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 media2.
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.
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ợ Thư viện Hộp cát về quyền riêng tư của Android cho Gradle
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.
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ổ
Compose tháng 8 năm 2023
Jetpack Compose 1.5.0 chuyển sang phiên bản ổn định và mang đến những cải tiến lớn về hiệu suất, bao gồm cả việc tái cấu trúc các đối tượng sửa đổi cấp cao như "Clickable" (Nhấp vào được), giúp cải thiện thời gian kết hợp thêm 80%. Ngày 23 tháng 8 năm 2023, Compose cũng cải thiện đến 70% khả năng phân bổ bộ nhớ (đặc biệt là trong ngăn xếp đồ hoạ), giúp giảm mức sử dụng bộ nhớ của Compose trên thiết bị
Wear Compose và Tiles 1.2
Cả Wear Compose và Wear Tiles đều đã chuyển sang phiên bản chính thức để nâng cao trải nghiệm của nhà phát triển WearOS hơn nữa. Cả hai đều bổ sung cho nhau, trong đó Wear Compose có thể được dùng để xây dựng màn hình ứng dụng phức tạp trên thiết bị Wear và có thể dùng thẻ thông tin trên Wear để tạo thẻ thông tin ứng dụng. Bản phát hành Wear Compose mới có các chức năng mới như Các mục có thể mở rộng và Vuốt để hiển thị. Bản phát hành Wear Tiles hiện cũng hỗ trợ ảnh động tiện ích và liên kết dữ liệu nền tảng (chẳng hạn như nguồn dữ liệu sức khoẻ).
Cửa sổ 1.1
1.1 ổn định các API nhúng hoạt động, cho phép các ứng dụng như WhatsApp, eBay và Temu xuất bản bố cục màn hình lớn. API này được bổ sung nhiều tính năng vì nó cho phép nhà phát triển sửa đổi hành vi chia đôi màn hình, kiểm tra (và thay đổi) trạng thái chia đôi trong thời gian chạy, triển khai chế độ phân tách theo chiều ngang và bắt đầu một cửa sổ phụ trong toàn bộ cửa sổ.
Ghi chú phát hành
Để biết thêm thông tin, hãy xem ghi chú phát hành của chúng tôi.

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