Với định dạng Android App Bundles mới, Google không chỉ tiết kiệm được chi phí băng thông cho việc truyền tải ứng dụng mà còn củng cố khả năng kiểm soát hệ sinh thái Android rộng lớn hiện tại.
Theo thông báo mới của Google, từ đầu tháng Tám tới đây, định dạng file của ứng dụng Android sẽ từ dạng APK (Android Package) đổi sang AAB (Android App Bundles) nếu muốn được phân phối qua cửa hàng ứng dụng Google Play Store.
Dù nghe có vẻ lạ tai, nhưng thật ra định dạng này đã được Google giới thiệu tới hệ sinh thái Android từ năm 2018 với ưu điểm giúp tiết kiệm dung lượng cho mỗi ứng dụng. Điều này rất quan trọng với thế giới Android khi nó phải tương thích nhiều chuẩn phần cứng và phần mềm khác nhau.
Tiết kiệm 15% dung lượng tải xuống
Hiện Android đang hỗ trợ hơn 150 ngôn ngữ lập trình, 4 kiến trúc CPU khác nhau (ARMv7, ARMv8, x86 và x86-64) cũng như vô số độ phân giải màn hình khác nhau. Tất cả các hỗ trợ này đều được đóng gói vào trong một file APK duy nhất (cho dù đôi khi nó cũng phân chia theo các kiến trúc CPU khác nhau).
Điều này cũng có nghĩa nhiều dòng code trong ứng dụng sẽ trở nên thừa thãi khi mỗi thiết bị cài đặt chỉ tương đồng một phần về kích thước màn hình cũng như kiến trúc CPU. Điều này có thể không vấn đề với các thiết bị cao cấp nhưng nó sẽ là gánh nặng cho các thiết bị giá rẻ có bộ nhớ giới hạn.
Android App Bundle chính là giải pháp của Google cho vấn đề này khi các file APK trước đây sẽ được phân chia thành những phần khác nhau – hay các "split APK" – các file APK phân tách. Mỗi phần sẽ hướng đến một nhóm các thay đổi khác nhau và kết hợp lại với nhau để tạo thành một ứng dụng cuối cùng.
Với Android App Bundles, các phần thích hợp của ứng dụng sẽ được tải xuống thiết bị, loại bỏ các dòng code thừa
Từ đây Google sẽ phân phối các phần riêng lẻ của ứng dụng đến các thiết bị tương thích. Ví dụ thông qua App Bundles, nếu thiết bị của bạn có màn hình độ phân giải cao, dùng CPU ARMv8 với ngôn ngữ là tiếng Anh, Play Store sẽ đưa ra phần Split APK hỗ trợ loại phần cứng đó. Play Store cũng có thể tạo ra phần APK dành riêng cho mỗi người dùng, giúp họ nhận được các dòng code cần thiết và loại bỏ những dòng code thừa thãi. Theo Google, giải pháp này sẽ giúp tiết kiệm được 15% dung lượng ứng dụng so với file APK thông thường.
Thậm chí, các ứng dụng dạng App Bundles này còn có thể phân tách theo những tính năng mà nó có. Điều này cho phép những tính năng của ứng dụng sẽ chỉ được đưa tới thiết bị hỗ trợ chúng, hoặc được gửi tới sau đến thiết bị nếu người dùng có nhu cầu.
Cách đóng gói ứng dụng mới giúp tiết kiệm đáng kể dung lượng tải xuống và cài đặt
Củng cố quyền kiểm soát của Google đối với Android
Cho dù có nhiều lợi ích, nhưng việc đổi từ dạng APK sang Android App Bundles cũng mang lại không ít phiền toái, khi nó làm hệ sinh thái Android ngày càng phức tạp hơn, đặc biệt với các ứng dụng Android chạy trên những thiết bị nằm ngoài hệ sinh thái Google Play. Nhưng điều đó còn mang lại một lợi ích khác cho Google, đó là củng cố thêm sức mạnh kiểm soát đối với hệ sinh thái phức tạp của Android.
Đó là vì ứng dụng dạng Android App Bundles cần phải được xử lý trên đám mây của App Store để có được các tính năng trên. Cho dù App Bundles là một định dạng mã nguồn mở và Google còn cung cấp công cụ để biên dịch nó, nhưng nếu công ty không có cơ sở hạ tầng đám mây riêng của mình, họ cũng không thể đáp ứng được các yêu cầu của định dạng ứng dụng này.
Hơn nữa, do đám mây của Google không chỉ đảm nhận việc lưu trữ các ứng dụng dạng App Bundles mà còn truyền tải các thành phần phù hợp của ứng dụng xuống thiết bị, nghĩa là Google cũng đảm nhận luôn cả trách nhiệm ký chứng thực cho ứng dụng thay cho các nhà phát triển. Trong khi điều này giúp bổ sung một thành phần bảo mật quan trọng cho ứng dụng Android, nó cũng giúp Google có thêm quyền kiểm soát đối với hệ sinh thái này.
Điều này cũng có nghĩa định dạng Android App Bundles sẽ đặt ra một gánh nặng khổng lồ về quyền lực và trách nhiệm đối với chủ sở hữu cửa hàng ứng dụng. Nếu hạ tầng của cửa hàng ứng dụng bị xâm phạm, một bên thứ ba có thể giành được chữ ký chứng thực của nhà phát triển và đưa vào các bản cập nhật độc hại cho toàn bộ người dùng mà họ không hề biết. Đối với Google, cho đến nay họ vẫn đang làm nhiệm vụ bảo mật tốt hơn nhiều so với các nhà phát triển ứng dụng khác. Nhưng thật khó để các cửa hàng ứng dụng khác có thể làm được điều tương tự.
Kiểm soát được Play Store, Google gần như đã sở hữu các con đường và cao tốc của hệ sinh thái Android, nhưng với App Bundles, Google còn kiểm soát được cả các ứng dụng – hay những chiếc xe chạy trên đó. Và đến tháng Tám tới đây, giải pháp này của Google sẽ chính thức được triển khai trên hệ sinh thái Android. Google cho biết, "các ứng dụng cũ sẽ được miễn trừ" đối với định dạng App Bundles này.
Đối với Google, Android App Bundles thực sự rất quan trọng. Tiết kiệm được 15% dung lượng tải xuống có thể không phải vấn đề lớn với người dùng, nhưng trong sự kiện I/O 2018, Google cho biết, nếu mọi ứng dụng đều chuyển sang dạng App Bundles, công ty sẽ tiết kiệm được 10 Petabytes băng thông mỗi ngày.
Trong khi dung lượng nhỏ gọn hơn sẽ giúp Google tiết kiệm một phần chi phí băng thông, cách đóng gói ứng dụng mới này còn mang lại một lợi ích lớn hơn cho người khổng lồ công nghệ này: đó là củng cố khả năng kiểm soát chặt chẽ hơn đối với hệ sinh thái Android rộng lớn và phức tạp như hiện nay. Điều này ngày càng quan trọng hơn trong bối cảnh nhiều cửa hàng ứng dụng Android đang mọc lên như nấm nhằm thách thức Play Store của Google.
Tham khảo Arstechnica