Bắt đầu từ tháng 8 năm 2021, các nhà phát triển sẽ phải tải các ứng dụng Android mới lên Cửa hàng Google Play ở định dạng file AAB. Câu hỏi đặt ra là sự khác biệt giữa AAB và APK là gì? AAB tốt hơn APK thế nào mà Google phải đổi?
Kể từ khi ra mắt Android hơn 10 năm nay, file đuôi APK đã là định dạng chung cho các ứng dụng. Các cửa hàng Google Play, APKMirror hay EFNet đều cung cấp cùng một chuẩn này. Đối với các nhà phát triển, AAB bây giờ sẽ trở thành bắt buộc và đối với người dùng Android, mọi thứ có vẻ sẽ phức tạp hơn.
AAB sẽ trở thành định dạng bắt buộc đối với tất cả các ứng dụng mới bắt đầu từ tháng 8 năm 2021. Các bản cập nhật cho các ứng dụng hiện có vẫn có thể được các nhà phát triển tải lên ở định dạng APK, vì vậy, tạm thời nó sẽ ảnh hưởng đến các ứng dụng mới.
File AAB là gì?
“AAB” là viết tắt của Android App Bundle. Tập tin AAB chứa toàn bộ mã chương trình của ứng dụng Android.
Ngay sau khi quá trình phát triển hoàn tất, nhà phát triển game hay ứng dụng sẽ tải file lên Cửa hàng Google Play ở định dạng AAB, người dùng (bạn) tải ứng dụng từ đó xuống điện thoại thông minh của bạn như bình thường.
Nhìn qua thì có vẻ không có gì thay đổi. Vậy khác biệt gì trong sự thay đổi này?
Sự khác biệt giữa tệp AAB và tệp APK là gì?
Các tệp AAB được tạo tùy chỉnh
Sự khác biệt giữa tệp APK và AAB nằm ở thứ mà chúng tôi gọi là tài nguyên (resources). Trong một ứng dụng, resources là một thứ khác mã lập trình, chẳng hạn như hình ảnh, tệp ngôn ngữ hoặc nhạc.
Nếu bạn cài đặt một ứng dụng trong Cửa hàng Play, thì Google sẽ gửi cho bạn tệp APK được điều chỉnh từ tệp AAB cho thiết bị của bạn với các tài nguyên cần thiết được yêu cầu.
Ví dụ, smartphone của bạn chỉ có độ phân giải Full HD+? Bạn sẽ nhận được APK không có các resource 4K. Bạn đã chọn tiếng Anh và tiếng Đức làm ngôn ngữ thiết bị? Bạn sẽ tải về file cài đặt không bao gồm các ngôn ngữ khác. Với sự trợ giúp của công cụ packtool của Google, các tệp AAB cũng có thể được chuyển đổi cục bộ thành các APK.
Ký bởi Google thay vì nhà phát triển
Một sự khác biệt lớn khác là trong việc ký ứng dụng (signing). Trước đây, nhà phát triển ứng dụng luôn là người ký ứng dụng đó bằng khóa nhà phát triển của họ. Bạn có thể sử dụng khóa này khi cài đặt ứng dụng trên smartphone để kiểm tra xem nó có bị xâm phạm hay không, chẳng hạn như có chứa phần mềm độc hại hay đã được mở khóa cho các tính năng yêu cầu thanh toán hay không.
Trong tương lai, nhà phát triển sẽ không ký các file APK mà là Google sẽ tự ký khi tạo tệp APK từ AAB. Về mặt logic, các chìa khóa sẽ không còn do các nhà phát triển nắm giữ nữa mà do Google nắm giữ.
Các tệp AAB có tốt hơn APK không?
Kích thước tệp nhỏ hơn so với APK
Với các thông tin trên thì bạn dễ dàng nhận thấy là file AAB chắc chắn sẽ nhỏ hơn file APK. Trung bình, bạn có thể thấy mức giảm 35% kích thước dựa trên những gì Google đã viết vào tháng 10 năm 2018.
Bảo vệ tốt hơn cho các ứng dụng
Một lợi ích khác mà các nhà phát triển sẽ thấy hữu ích sẽ là tăng cường bảo mật. Có lẽ sẽ khó sửa đổi ứng dụng hơn trong tương lai và các bản mod sẽ khó tồn tại hơn. Ví dụ các bản hack trong Among Us phổ biến hiện nay.
Một vấn đề nữa sẽ giải quyết đó là với AAB, các phiên bản ứng dụng Lite và Pro trong Cửa hàng Play sẽ không còn tồn tại nữa. Trước đây, có thể cài đặt phiên bản Pro trả phí thay vì phiên bản Lite sau khi mua nhờ cùng một chữ ký, có thể nói là như một bản cập nhật. Với AABs và Google ký, điều đó không còn có thể thực hiện được nữa. Thay vào đó, các nhà phát triển sẽ phải chuyển sang mua hàng trong ứng dụng.
Cập nhật và phát triển dễ dàng hơn
Các file AAB riêng tùy thuộc vào người dùng hoặc phần cứng sử dụng mang lại lợi thế bổ sung cho các nhà phát triển. Nhờ định dạng AAB, các bản cập nhật có thể được đẩy ra các thiết bị cụ thể vào những thời điểm cụ thể.
Đây là một lợi thế, đặc biệt là với sự phân mảnh lớn của Android và có thể ngăn chặn các bản cập nhật bị hỏng trong tương lai hoặc giảm thiểu ảnh hưởng của chúng.
Bản thân quá trình phát triển ứng dụng hay game cũng sẽ trở nên dễ dàng hơn. Trước đây, nhiều nhà phát triển đã tải nhiều phiên bản APK cho ứng dụng của họ lên Cửa hàng Play, phiên bản này đã được điều chỉnh cho phù hợp với các khu vực, ngôn ngữ hoặc kiến trúc bộ xử lý khác nhau. Trong tương lai, các nhà phát triển sẽ chỉ cần tải lên một tệp AAB chung duy nhất.
AAB có tệ hơn APK không?
Có ưu thì chắc chắn có khuyết điểm. Có những nhược điểm đối với AAB, đặc biệt là do các chữ ký đã đề cập trước đó.
Bạn có muốn tải xuống WhatsApp beta mới qua APKMirror và thử các tính năng mới không? Quên điều đó đi, vì APKMirror ở đây sử dụng chữ ký khác với Cửa hàng Google Play.
Chắc chắn, bạn chỉ có thể gỡ cài đặt ứng dụng và cài đặt lại nó trên điện thoại thông minh của mình từ một nguồn khác. Nhưng sau đó bạn sẽ phải sao lưu tất cả dữ liệu của bạn và sau đó cài đặt lại. Đây cũng là một vấn đề.
Ngoài ra, AAB sẽ cung cấp nhiều quyền lực hơn cho Google. Thực tế là trong tương lai, các chữ ký sẽ được Google lưu trữ. Nếu các máy chủ bị tấn công, tất cả các ứng dụng sẽ cùng bị ảnh hưởng. Đồng thời, Google cũng có quyền tự thay đổi ứng dụng thông qua các developer keys. Về mặt lý thuyết, nếu chính phủ gây áp lực lên Google, họ có thể xây dựng một backdoor thành một ứng dụng nhắn tin tức thời an toàn mà nhà phát triển không hề hay biết.
Một bất lợi khác liên quan đến chính các nhà phát triển ứng dụng và việc sửa lỗi. Nếu một người dùng gặp sự cố với ứng dụng, trước đây có một cách khắc phục đơn giản là sửa đổi ứng dụng, gửi ứng dụng đó cho người dùng, để người dùng cập nhật ứng dụng và hy vọng rằng lỗi sẽ được loại bỏ. Nhưng điều đó chỉ có thể thực hiện được vì các nhà phát triển có thể tự ký ứng dụng. Còn giờ đây thì không.
Tổng quan
Xét cho cùng, Google không phải là Apple và bạn vẫn có thể chứng nhận các ứng dụng bên ngoài cho đến thời điểm hiện tại. Có vẻ như Google đang nỗ lực để củng cố vị trí độc quyền của Cửa hàng Google Play. Và bắt đầu bằng AAB.
Các khía cạnh khác cần xem xét
Mặc dù AAB mang lại nhiều lợi ích nhưng cũng có một số khía cạnh khác mà người dùng và nhà phát triển cần lưu ý.
Ảnh hưởng đến trải nghiệm người dùng
Chuyển đổi từ APK sang AAB có thể ảnh hưởng đến trải nghiệm người dùng, đặc biệt là cho những người dùng không quen thuộc với công nghệ. Việc ứng dụng không còn được phát hành dưới dạng APK có thể hạn chế quyền tự do tải xuống ứng dụng từ bên ngoài, điều này có thể khiến một số người dùng cảm thấy không thoải mái.
Khả năng tương thích
Nhà phát triển cần đảm bảo rằng AAB của họ tương thích với tất cả các thiết bị Android. Nếu không, một số người dùng có thể không nhận được phiên bản phù hợp với thiết bị của họ, và điều này có thể dẫn đến sự thất vọng.
Các công cụ hỗ trợ cho phát triển AAB
Để hỗ trợ nhà phát triển trong quá trình chuyển đổi từ APK sang AAB, Google đã trình bày một số công cụ hữu ích như Android Studio và Play Console. Điều này giúp nhà phát triển dễ dàng tạo, kiểm tra và phát hành ứng dụng AAB một cách hiệu quả hơn.
Kỳ vọng trong tương lai
Khi AAB trở thành tiêu chuẩn mới, có khả năng các công nghệ khác như Progressive Web Apps (PWA) sẽ trở thành xu hướng, mở ra nhiều lựa chọn hơn cho cả nhà phát triển và người dùng. PWA cho phép ứng dụng chạy trên nhiều nền tảng mà không cần tải xuống, điều này có thể ảnh hưởng đến cách mà AAB và APK được sử dụng trong tương lai.
Kết luận, việc chuyển đổi sang AAB là một bước ngoặt lớn trong thế giới phát triển ứng dụng Android. Tuy nhiên, các nhà phát triển và người dùng nên xem xét tất cả các khía cạnh để đảm bảo rằng họ không chỉ tận dụng được những lợi ích mà còn tránh được những hạn chế mà việc này có thể mang lại.
Các điều cần lưu ý thêm
Bên cạnh những lợi ích và thách thức đã thảo luận trước đó, người dùng và nhà phát triển cũng cần chú ý đến một số yếu tố quan trọng khác liên quan đến sự chuyển đổi từ APK sang AAB.
Tác động đến người dùng cuối
Việc chuyển đổi từ định dạng APK sang AAB có thể làm thay đổi cách mà người dùng cuối tương tác với ứng dụng. Một số người dùng không quen với việc cài đặt từ Cửa hàng Google Play có thể cảm thấy khó khăn trong việc truy cập vào những ứng dụng họ yêu thích, đặc biệt là khi họ có thói quen tải ứng dụng từ các nguồn bên ngoài.
Quy trình phát triển ứng dụng
Ngoài ra, quy trình phát triển ứng dụng cũng sẽ bị ảnh hưởng khi các nhà phát triển cần phải làm quen với các công cụ và kỹ thuật mới để tạo ra các file AAB. Điều này có thể yêu cầu thêm thời gian và nguồn lực để đảm bảo rằng mọi thứ diễn ra suôn sẻ trong giai đoạn thử nghiệm và phát hành.
Những thách thức trong bảo mật và quyền riêng tư
Có lo ngại về việc Google sẽ nắm giữ quyền kiểm soát lớn hơn đối với việc phát hành và quản lý ứng dụng. Trong khi điều này có thể tăng cường bảo mật trong một số trường hợp, nhưng cũng có thể gây ra mối lo ngại về quyền riêng tư và sự tự do của nhà phát triển trong việc điều chỉnh ứng dụng theo nhu cầu của người dùng.
Cải tiến liên tục và cập nhật nhanh chóng
Do quy trình phát hành AAB được Google tự động hóa, nhờ có việc ký tự động, các bản cập nhật ứng dụng có thể nhanh chóng đến tay người dùng. Điều này sẽ giúp tăng tính ổn định và sự hài lòng của người dùng. Tuy nhiên, điều này cũng yêu cầu các nhà phát triển nỗ lực nhiều hơn trong việc cung cấp các bản cập nhật thường xuyên và xử lý nhanh các lỗi phát sinh.
Cuối cùng, việc acclimat hóa đến một hệ thống mới không bao giờ là dễ dàng, nhưng với sự chuẩn bị và hỗ trợ đúng cách, cả nhà phát triển và người dùng đều có thể tận dụng tối đa lợi ích mà định dạng AAB mang lại.