Android Jetpack Là Gì? Tại Sao Bạn Nên Biết - VNTALKING
Có thể bạn quan tâm
Bạn đã nghe rất nhiều người nói Android Jetpack, nhưng thực sự Android Jetpack là gì? Bài viết này chúng ta sẽ cùng nhau tìm hiểu về Android Jetpack nhé.
Nội dung chính của bài viết
- #Android Jetpack là gì?
- #Ưu điểm của Android Jetpack
- 1. Tính “mở”
- 2. Tính tương thích ngược
- 3. Dễ dàng testing
- 4. Các component độc lập với nhau
- #Android Jetpack có gì mới
- 1. WorkManager
- 2. Navigation
- 3. Paging
- 4. Slices
- 5. Android KTX
- Tạm kết
#Android Jetpack là gì?
Android Jetpack là một tập hợp các components, tools giúp bạn nhanh chóng tạo ra các ứng dụng Android tuyệt vời. Các components này kết hợp giữa Support Library và Architecture Components.
Có thể phân loại Android Jetpack thành 4 thành phần chính:
- Foumdation components (Ví dụ: ktx, appcompat, multidex, test)
- Architecture components (Ví dụ: Data Binding, Lifecycles, ViewModel, Livedata, Room, Paging, Navigation, WorkManager)
- Behavior components (Ví dụ: Download manager, Media, Notifications, Permissions, Sharing, Slices)
- UI components (Ví dụ: Animations, Auto, Emoji, Fragment, Layout, Palette, TV, Wear OS )
#Ưu điểm của Android Jetpack
1. Tính “mở”
Để hiểu kỹ hơn và trả lời câu hỏi Android Jetpack là gì? thì hãy xem xét: Các Android Jetpack components được cung cấp dưới dạng các thư viện “mở”, không phải là một phần của nền tảng Android cơ bản. Điều này có nghĩa là bạn có thể dễ dàng áp dụng từng component.
Mỗi khi Android Jetpack có thêm một tính năng mới, bạn có thể dễ dàng thêm nó vào trong ứng dụng của mình, triển khai ứng dụng trên Play Store và cung cấp cho người dùng tất cả các tính năng mới chỉ trong một ngày. Các thư viện mở sẽ được chuyển vào androidx.* namespace mới.
2. Tính tương thích ngược
Ngoài ra, ứng dụng của bạn có thể chạy mượt mà trên nhiều phiên bản của Android mà không lo lắng về tính tương thích. Tại sao ư?
Vì đơn giản là Android Jetpack được xây dựng dựa trên Support Library. Mà các thư viện này được các nhà phát triển Android tạo ra để cung cấp các chức năng độc lập với các phiên Android, và có tính tương thích ngược rất tốt.
Ví dụ như: Ứng dụng của bạn sử dụng Fragment mà lại muốn hỗ trợ Android 3.0 trở xuống? Chính là lúc bạn nghĩ tới Support Library đấy.
3. Dễ dàng testing
Hơn nữa, Android Jetpack còn có thiết kế rất tốt cho việc testing. Nó tách biệt giữa phần chức năng và phần test. Điều này giúp bạn dễ dàng kiểm tra, nâng cao chất lượng ứng dụng.
4. Các component độc lập với nhau
Mặc dù các components của Android Jetpack được xây dựng để hoạt động cùng nhau. Ví dụ: lifecycle awareness và live data.
Tuy nhiên, bạn không phải bắt buộc phải sử dụng tất cả chúng. Bạn có thể tích hợp từng phần của Android Jetpack để giải quyết một vấn đề của bạn. Điều này giúp cho ứng dụng trở nên nhẹ nhàng.
- Dành cho bạn: Android Instant App là gì? Xu hướng dùng app không cần Install
#Android Jetpack có gì mới
Android Jetpack có tới 5 components mới, đó là:
- WorkManager
- Navigation
- Paging
- Slices
- Android KTX (Kotlin Extensions)
1. WorkManager
WorkMananager component là một thư viện cung cấp giải pháp giúp cho các tác vụ chạy nền( background task) được hiệu quả hơn.
Đưa một nhiệm vụ cho WorkManager và để cho nó chọn một cách thích hợp để chạy nó trong nền tùy theo điều kiện. Nó thay thế những thứ như jobs hoặc SyncAdapters.
WorkManager cung cấp một API có khả năng làm việc trên các thiết bị có hoặc không có Google Play Services.
Ngoài ra, WorkManager còn có khả năng tạo biểu đồ công việc và truy vấn trạng thái công việc của bạn.
Trong khi Activity trong Android được cung cấp để bạn dễ dàng tạo và tương tác với người dùng thông qua UI. Nhưng nó lại không linh hoạt trong việc chia sẻ dữ liệu và chuyển đổi giữa các Activity.
Chính vì vậy mà Activity trở thành một cấu trúc kém lý tưởng để xây dựng điều hướng trong ứng dụng.
Vì vậy, Google I/O 18 đã giới thiệu Navigation component dưới dạng một famework. Navigation component giúp cho bạn dễ dàng tạo điều hướng trong ứng dụng.
Với khả năng hỗ trợ Fragment, bạn sẽ nhận được tất cả các lợi ích từ Architecture Components như Lifecycle và ViewModel trong khi Navigation sẽ xử lý sự phức tạp của FragmentTransilities giùm bạn.
Mình có thể liệt kê một số tính năng hay ho của Navigation component như:
- Hỗ trợ hiệu ứng khi bạn điều hướng giữa các màn hình.
- Tự động xây dựng các hành vi Up và Back.
- Hỗ trợ đầy đủ cho các liên kết sâu(Deep link)
- Cung cấp công cụ để kết nối Navigation vào các tiện ích UI thích hợp. Như navigation drawer và Bottom Navigation
Cuối cùng, trình chỉnh sửa Navigation Editor trong Android Studio 3.2 còn cho phép bạn xem và quản lý các navigation properties của mình một cách rất trực quan.
3. Paging
Thông thường, người ta sẽ không tải toàn bộ dữ liệu và hiển thị ra màn hình. Vì điều đó sẽ vừa tốn thời gian lấy dữ liệu, vừa tốn thời gian và tài nguyên để hiển thị. Do vậy, người ta chỉ tải từng phần của dữ liệu. Đây chính là khái niệm paging.
Paging component giúp việc tải dữ liệu trở nên dễ dàng. Đồng thời giúp việc hiển thị các tập dữ liệu lớn với tốc độ cuộn nhanh hơn, không giới hạn với RecyclerView.
Paging component có thể tải dữ liệu phân trang từ bộ nhớ cục bộ, mạng hoặc cả hai. Nó hoạt động hiệu quả hơn hẳn so với Room, LiveData và RxJava.
4. Slices
Để hoàn thiện bộ các tính năng mới ra mắt của Android Jetpack thì không thể không nhắc đến Slices component.
“Slice” là cách để hiển thị UI của ứng dụng bên trong Google Assistant. Giống như hình bên dưới:
5. Android KTX
Và cuối cùng nhưng không kém phần quan trọng trong câu trả lời Android Jetpack là gì, một mục tiêu của Android Jetpack đó là tận dụng các ưu điểm của ngôn ngữ Kotlin giúp bạn làm việc hiệu quả hơn.
Android KTX cho phép bạn chuyển đổi mã Kotlin từ như thế này:
view.viewTreeObserver.addOnPreDrawListener( object : ViewTreeObserver.OnPreDrawListener { override fun onPreDraw(): Boolean { viewTreeObserver.removeOnPreDrawListener(this) actionToBeTriggered() return true } });thành mã ngắn gọn hơn rất nhiều:
view.doOnPreDraw { actionToBeTriggered() }Tạm kết
Như vậy chúng ta đã hiểu Android Jetpack là gì, ưu điểm nổi bật của nó.
Về cá nhân mình thì thấy Android Jetpack rất tiềm năng. Nó giúp cho developer xây dựng ứng nhanh và chất lượng cao.
Bài viết sau, mình sẽ hướng dẫn các bạn viết một ứng dụng cơ bản bằng Android Jetpack. Qua đó, các bạn sẽ biết cách ứng dụng Android Jetpack vào dự án thực tế.
Các bạn đón đọc và đừng quen chia sẻ bài viết ủng hộ mình nhé.
Từ khóa » Jet Pack Nghĩa Là Gì
-
Ý Nghĩa Của Jetpack Trong Tiếng Anh - Cambridge Dictionary
-
Nghĩa Của Từ : Jetpack | Vietnamese Translation - Tiếng Việt để Dịch ...
-
Jetpack Là Gì? Những Kiến Thức Cần Biết Về Plugin Jetpack Wordpress
-
Jet Pack Là Gì - Nghĩa Của Từ Jet Pack - Hàng Hiệu
-
Jetpack Là Gì? Plugin đa Năng Giúp Tối ưu Website Cực Hiệu Quả
-
Jetpack Là Gì? Tìm Hiểu Chi Tiết Từ A → Z Về Jetpack - Vinalink
-
Động Cơ Phản Lực Jet Pack, Mơ ước Của Thế Kỷ
-
"jet Pack" Có Nghĩa Là Gì? - Câu Hỏi Về Tiếng Anh (Mỹ) | HiNative
-
JETPACKS Tiếng Anh Là Gì - Trong Tiếng Anh Dịch - Tr-ex
-
Jetpack Là Gì? Cách Cài đặt Và Sử Dụng Jetpack - Nhân Hòa
-
Jet Pack Là Gì - Động Cơ Phản Lực Jet Pack, Mơ Ước Của Thế Kỷ
-
Jetpack Là Gì? Cài đặt Và Sử Dụng Jetpack Plugin Mới Nhất 2021
-
Jet Pack Là Gì
-
Thông Thạo Jetpack - Phần 1 - Jetpack Là Gì? - Yellow Code Books