Cách deployed file (.aab)

Định dạng mới là AAB (Android App Bundle)

AAB cho phép Google Play download đúng phần app cần cho thiết bị của bạn, giúp giảm đáng kể dung lượng cài đặt.

Còn định dạng APK đóng gói tất cả mọi thứ app cần để hoạt động, trong đó có cả những thứ mà máy bạn có thể không dùng tới như một số hình ảnh, file ngôn ngữ… Một điểm nổi bật khác của app AAB là chúng còn được hỗ trợ Play App Signing, một tính năng mới giúp app tránh bị chỉnh sửa nhúng mã độc trong quá trình download.

Định dạng mới là AAB (Android App Bundle)

Quy trình của Google Play Store khi một thiết bị tải về một app dùng định dạng AAB.

Khi một người dùng vào Play Store để tải app, chợ ứng dụng này sẽ dựa vào loại màn hình, kiến trúc, ngôn ngữ của thiết bị để tự động đóng gói một file APK phù hợp để tải về. Những phần không cần thiết sẽ bị loại bỏ nên file APK thật sự cài đặt lên thiết bị sẽ nhỏ hơn đáng kể. Việc chuyển đổi sang định dạng AAB không có gì quá khó khăn so với việc build file APK cả.

Netflix, Adobe… và một số app khác đã chuyển sang dùng AAB. Hiện tại quy định mới về dùng định dạng AAB chỉ áp dụng cho các app mới hoàn toàn chưa bao giờ được đăng lên Play Store. Tuy nhiên, Google sẽ sớm áp dụng quy định này cho các app hiện tại trong thời gian tới.

Các app lớn như game cần phải tải file OBB về để hoạt động, cũng sẽ phải chuyển sang dùng tính năng Play Assert Delivery (PAD) trong thời gian tới. Việc này nhằm đảm bảo an toàn cho các file, hỗ trợ tính năng cập nhật delta và đơn giản hóa quy trình đăng app.

Cách deployed file (.aab) sang định dạng apk cho thiết bị test

Android App Bundle (.aab) là gì?

Đồng hành với sự phát triển của công nghệ, ứng dụng Android cũng như các hệ điều hành khác của thiết bị di động tăng đột biến mỗi năm, Tuy nhiên, có một điểm là tất cả đồ họa, độ nét cao, các tính năng sáng tạo và nội dung đa phương tiện phong phú đều có tác động tiêu cực đến trải nghiệm người dùng. Không ai muốn một ứng dụng phải tải xuống mãi mãi và sau đó loại bỏ chúng bộ nhớ của thiết bị do app quá nặng không thể tương thích với bộ nhớ thiết bị. Vậy nên sự xuất hiện của Android App Bundle nhằm giảm thiểu dung lượng file APK ứng dụng Android. Android App Bundle là một file (với phần đuôi mở rộng .aab) để bạn upload lên Google Play để hỗ trợ Dynamic Delivery. Nó bao gồm tất cả các resource và mã code được compile trong ứng dụng của bạn, nhưng không tạo APK và chữ ký Google Play. Bạn không cần phải build, ký và quản lý nhiều APKs để support nhiều thiết bị khác nhau và từ đó người dùng có các bản tải xuống nhỏ hơn, tối ưu hơn. Và công việc của QA là test app, vậy thì làm thế nào để deploy file .aab sang .apk hoặc .apks để test. Mình sử dụng bundletool- command line tool mà Gradle, Android Studio và Google Play sử dụng để xây dựng Android App Bundle hoặc chuyển đổi app bundle thành APK được deployed cho các thiết bị.

Yêu cầu cài đặt:

1. Android SDK: Để cài Android SDK mình download theo link sau: https://developer.android.com/studio/#downloads

2. Java Home Để cài đặt Java Home thì mình cần download Java JDK/JRE theo link sau: https://www.oracle.com/technetwork/java/javase/downloads/jdk11-downloads-5066655.html

Tiến hành cài đặt:

1. Android Home

Bước 1: Sau khi click vào link download bên trên chọn như hình bên dưới, mình dùng win 10 – 64 bit nhé

Bước 2: Sau khi download xong về thư mục cá nhân mình tiến hành giải nén file Trường hợp bạn có Android Studio rồi thì mình không cần down SDK này nữa vì Android Studio đã bao gồm cả SDK rồi

Bước 3: Sau khi giải nén file mình lấy đường dẫn thư mục Android gốc để paste vào Environment Variables của System

Bước 4: Mở Environment Variables của System

Chọn Advanced system settings

Chọn Environment Variables

Chọn New

Trong hộp thoại New System Variables điền : Variable name: ANDROID_HOME Variable value: đưa đường dẫn ở Bước 3 vào đây nhé

Tiếp theo chọn Path trong System variables và chọn Edit

Trong hộp thoại này chọn New và thêm lần lượt 3 giá trị như sau vào vào dưới cùng các giá trị sẵn có : %ANDROID_HOME%\tools %ANDROID_HOME%\tools\bin %ANDROID_HOME%\platform-tools ![](https://images.viblo.asia/ce82402d-9586-43f8-8a62-c45e2a697320.png) Sau đó click OK

2. Java Home

Bước 1: Sau khi click vào link download Java JDK ở trên mình chọn Accept License Agreement và chọn file .exe để cài đặt

Bước 2: Sau khi download xong về thư mục cá nhân mình tiến hành giải nén file, lấy đường dẫn thư mục Java JDK/JRE gốc để paste vào Environment Variables của System

Bước 3: Mở Environment Variables của System Tương tự như khi cài đặt Android Home Mình add thêm value cho System Variables

Add thêm Path sau vào giá trị cuối trong hộp thoại Environment Variables %JAVA_HOME%\bin Click OK

Tiến hành deployed file (.aab) cho device

Bước 1: Trước hết cần download bundle tool tại https://github.com/google/bundletool/releases

Sau khi download mở file vào Run Adminitrators nhé

Bước 2: Cần lấy file aab từ Developer của bạn và đưa vào 1 folder riêng

Bước 3: Cắm device bạn cần deploy vào máy tính nhé, nhớ ấn Allow trong device để Allow access to phone data thì mình mới có thể tiếp tục cài đặt được nha

Bước 4: Mở folder có file aab, giữ phím Shift và click right vào file aab đó, chọn Open PowerShell window here:

Bước 5: Chú ý tên file của mình là app.stg Trong hộp thoại mình sẽ gõ như sau để gen ra file apk như mong muốn và bạn chú ý là cần thay tên file của bạn vào nhé:

java -jar .\bundletool.jar build-apks --connected-device --bundle=.\app_stg.aab --output app_stg.apks

Dòng thứ 1 chạy xong, bạn cần gõ tiếp dòng thứ 2 để cài file vào máy của bạn

java -jar .\bundletool.jar install-apks --apks=.\app_stg.apks

Như hình trên là bạn đã thành công rồi nhé. Trên device của bạn lúc này sẽ xuất hiện app vừa cài đặt của bạn đó, test ngay đi nào.

Trả lời