[Android] So Sánh ưu, Nhược điểm Của 2 Thư Viện Load ảnh Glide Và ...
Có thể bạn quan tâm
Glide và Picasso là 2 trong những thư viện load ảnh phổ biến nhất khi lập trình ứng dụng Android. Nếu chỉ sử dụng một cách đơn thuần, thì chúng hầu như giống nhau đến 90%. Tuy nhiên, cả hai đều rất khác nhau trong cách tải hình ảnh, lưu trữ hình ảnh và tải chúng vào bộ nhớ.
Glide và Picasso là 2 trong những thư viện load ảnh phổ biến nhất khi lập trình ứng dụng Android. Nếu chỉ sử dụng một cách đơn thuần, thì chúng hầu như giống nhau đến 90%. Tuy nhiên, cả hai đều rất khác nhau trong cách tải hình ảnh, lưu trữ hình ảnh và tải chúng vào bộ nhớ.
Ta hãy cùng so sánh hai thư viện này.
1. Import thư viện:
Cả hai Picasso và Glide là trên jcenter. Bạn chỉ có thể dễ dàng import nó vào dependency của dự án của mình như bên dưới:
Picasso dependencies { compile 'com.squareup.picasso: picasso: 2.5.1' } Glide dependencies { compile 'com.github.bumptech.glide: lướt: 3.5.2' compile 'com.android.support:support-v4:22.0.0' }2. Chất lượng hình ảnh:
Chất lượng hình ảnh giữa hai thư viện có thể không quá khác nhau, nhưng Picasso được biết đến với chất lượng hình ảnh tốt hơn. Như bạn có thể thấy ở các hình ảnh bên dưới, Glide có một số pixel cứng và không mượt như Picasso.
Tuy nhiên, đây không hẳn là nhược điểm của Glide, vì như chúng ta đã biết, với ứng dụng Android thông thường, hình ảnh chỉ cần ở mức chấp nhận được, vừa giảm thiểu dung lượng cho app, vừa giảm thời gian tải ảnh.
3. Disk Caching
Cả hai thư viện đều hỗ trợ lưu ảnh trong disk. Chúng tải hình ảnh từ Url và lưu trữ hình ảnh đó trên disk bằng cách lưu vào bộ nhớ cache.
Nhưng có một số khác biệt về cách lưu trữ hình ảnh trong bộ nhớ cache Picasso tải hình ảnh và lưu trữ nó với kích thước đầy đủ ở bộ nhớ cache, khi ta có yêu cầu lấy ảnh thì nó trả về hình ảnh với chất lượng đầy đủ nhưng lại thay đổi kích thước cho khớp với ImageView.
Glide thì khác, nó tải hình ảnh về, nó thay đổi kích thước của hình ảnh như với ImageView và sau đó lưu trữ vào bộ nhớ cache. Glide có thể lưu nhiều hình ảnh với kích thước khác nhau trong bộ nhớ cache, điều đó cũng một phần tăng kích thước của cache Khi ta có các ImageView có các kích thước khác nhau.
Tóm lại, Picasso chỉ lưu một kích thước duy nhất của hình ảnh đó ở cache, và là kích thước đầy đủ. Trong khi Glide lưu trữ từng file riêng cho từng ImageView.
4. Memory
Mặc định Glide sử dụng cấu hình RGB_565 trong khi Picasso tải hình ảnh trong cấu hình ARGB_8888 để tải bitmap vào bộ nhớ.
Nhìn vào biểu đồ thì ta có thể thấy Glide dùng bộ nhớ hiệu quả hơn Picasso (8M so với 13M). Dựa vào những phần trước, điều này tương đối dễ hiểu.
5. Thời gian tải ảnh
Để lấy cùng một hình ảnh về thì có vẻ Picasso nhanh hơn Glide. Vì Picasso sau khi tải ảnh về nó đẩy trực tiếp kích thước đầy đủ của ảnh đó vào bộ nhớ trong khi Glide thay đổi kích thước của hình ảnh theo ImageView. Điều đó cần một chút thời gian để thay đổi kích thước hình ảnh.
6. Kết luận
Đây là bảng so sánh cụ thể 2 thư viện:
Cả 2 thư viện đều có những ưu và nhược điểm riêng. Tuy nhiên, đối với mình, từng trải nghiệm cả 2 thư viện thì cá nhân mình cảm thấy có thiện cảm hơn đối với Glide. Cách Glide tải một hình ảnh vào bộ nhớ và làm bộ nhớ đệm là tốt hơn so với Picasso mà để cho một hình ảnh được tải nhanh hơn. Ngoài ra, nó cũng giúp ngăn chặn một ứng dụng bị OutOfMemoryError liên tục. Tải GIF Animation là một tính năng cung cấp bởi Glide mà Picasso không có.
Tài liệu tham khảo:
- http://code24h.com/thu-vien-load-anh-trong-android-phan-2-su-khac-nhau-giua-glide-va-picasso-d28471.htm
- https://yourwebsitefirst.com/picasso-vs-glide-advantage-disadvantage/
Từ khóa » Thư Viện Picasso
-
Sử Dụng Thư Viện Picasso Trong ứng Dụng Android - Viblo
-
Sử Dụng Thư Viện Picasso để Load ảnh Trong Android - Viblo
-
Sử Dụng Picasso để Load ảnh Trong Android - Hoclaptrinh
-
Load ảnh Từ Internet Với Thư Viện Picasso
-
Demo Load Hình Dùng Thư Viện Picasso - GitHub
-
Sử Dụng Thư Viện Load ảnh Picasso Trong Lập Trình Android - DROID9X
-
ANdroid Recycleview Sử Dụng Thư Viện Picasso Trong Android
-
Thư Viện Picasso, Android: Sử Dụng Trình Xử Lý Lỗi
-
Android SDK: Làm Việc Với Picasso - Code Tutsplus
-
Sử Dụng Thư Viện Glide Trên Android
-
Picasso - Square Open Source
-
[Android] Load ảnh Với Thư Viện Picasso | That2U
-
Top 4 Thư Viện Image Loading Android Tốt Nhất - VNTALKING