Hỏi Đáp

How to Generate and Extract APK Files from Android App Bundle

Aab to apk

Video Aab to apk

Trong google, i/o 2018, android app bundle, một định dạng tệp mới đã được giới thiệu để phân phối các ứng dụng android thông qua google play. Cuối năm 2019, Google bắt đầu khuyến nghị các nhà phát triển tải lên ứng dụng/bản cập nhật mới ở định dạng .aab thay vì định dạng .apk truyền thống. Mục tiêu chính của gói ứng dụng Android là giảm kích thước của ứng dụng bạn tải xuống từ cửa hàng Play. Về mặt kỹ thuật, nó là một tập hợp các gói ứng dụng khác nhau được tạo động cho các cấu hình thiết bị khác nhau. Nếu bạn muốn cài đặt các tệp .aab bên ngoài cửa hàng play, trước tiên bạn cần giải nén các tệp apk từ aab, sau đó cài đặt chúng theo cách thủ công trên thiết bị Android của bạn.

Không giống như các tệp .apk truyền thống, các tệp .aab không thể được chia sẻ hoặc tải sẵn để thử nghiệm. Khi bạn tải tệp .aab lên trong bảng điều khiển google play, tệp .apk được tối ưu hóa sẽ được tạo động dựa trên cấu hình thiết bị của người dùng.

Ví dụ: nếu một ứng dụng Android có nhiều tệp “strings.xml” ở các ngôn ngữ khác nhau và ngôn ngữ mặc định trên thiết bị của bạn được đặt thành tiếng Anh. Một tệp .apk sẽ được tạo động cho thiết bị của bạn, loại trừ tất cả các tệp ngôn ngữ khác để giảm kích thước .apk.

Notification History Log Android App Bundle Size Difference

Tính năng này thuận tiện theo quan điểm của người dùng, nhưng đối với nhà phát triển và người thử nghiệm, tính năng này gây thêm nhiều vấn đề đau đầu. Vì không thể cài đặt các tệp .aab như apks, trước tiên bạn cần tải tệp đó lên cửa hàng trò chơi để thử nghiệm hoặc tạo tệp apk theo cách thủ công từ gói ứng dụng Android (.aab). Sau khi giải nén nhiều tệp apk hoặc apk phổ biến từ .aab, bạn có thể cài đặt ứng dụng trên các cấu hình thiết bị khác nhau.

Chuyển đổi gói ứng dụng android (.aab) thành tệp apk

Sau khi tạo gói ứng dụng android từ studio android hoặc ý tưởng yêu thích của bạn, trước tiên bạn cần kiểm tra xem apk đã tạo hoạt động như thế nào khi được triển khai trên điện thoại cục bộ. Cách nhanh nhất là convert file .aab thành apk và cài đặt theo cách truyền thống.

Để trích xuất tệp apk từ gói ứng dụng Android, chúng tôi sử dụng bundletool, một công cụ dòng lệnh mã nguồn mở có sẵn trên github. Công cụ này được sử dụng để thao tác các gói ứng dụng Android để tạo các tệp lưu trữ bộ apk (.apks). Sau khi tạo tệp “.apks” bằng bundletool, chúng tôi có thể giải nén tệp apk bằng cách thay đổi tệp thành định dạng .zip.

Dưới đây là cách sử dụng bundletool để tạo tệp lưu trữ .apks và trích xuất tệp .apk từ gói ứng dụng Android:

convert aab to apk

Bước 1: Tải xuống công cụ dòng lệnh bundletool

Trước tiên, hãy tải xuống phiên bản mới nhất của tệp jar bundletool từ github và lưu nó vào một thư mục trên màn hình của bạn. Tại thời điểm viết bài này, phiên bản mới nhất của bundletool là 0.10.2, để đơn giản, tên tệp đã được đổi từ bundletool-all-0.10.2.jar thành bundletool.jar

Download bundletool.jar to extract APK from AAB

Bước 2: Tạo tệp lưu trữ bộ apk (.apks) từ .aab

Sao chép tệp gói ứng dụng Android (.aab) của bạn vào cùng thư mục mà bạn đã tải xuống bundletool.jar ở bước trước. Điều rất quan trọng là bạn phải đảm bảo rằng các tệp bundletool.jar và .aab nằm trong cùng một thư mục mỗi khi bạn chạy lệnh bundletool.

Như được hiển thị trong ảnh chụp màn hình, tên gói ứng dụng Android của tôi là nhl.aab và cả hai tệp “bundletool.jar” và “nhl.aab” đều nằm trong cùng một thư mục. Đối với hướng dẫn này, chúng tôi sử dụng tệp aab của ứng dụng lịch sử thông báo.

Xem Thêm : Hình ảnh nam ngầu – Ảnh boy đẹp trai, ngầu, lạnh lùng

bundletool.jar and app bundle placed in the same folder

Bây giờ hãy mở dấu nhắc lệnh (windows) hoặc thiết bị đầu cuối (mac) và sử dụng lệnh cd để thay đổi thư mục thành thư mục máy tính để bàn của bạn. Để tạo tệp lưu trữ bộ apk (.apks) chứa các tệp apk khác nhau cho tất cả các cấu hình thiết bị được ứng dụng hỗ trợ, hãy chạy lệnh build-apks như hình bên dưới.

java -jar bundletool.jar build-apks -bundle=nhl.aab -output=nhl.apks

Sau khi chạy lệnh trên, một tệp mới có tên “nhl.apks” sẽ được tạo trong cùng một thư mục. Đây là tệp lưu trữ apk, bằng cách giải nén nó, bạn sẽ nhận được nhiều tệp apk được định cấu hình cho các thiết bị khác nhau.

APKs archive file with .apks file extension

Bước 3: Giải nén tệp apk

Sau khi tệp “nhl.apks” được tạo, bạn có thể dễ dàng trích xuất tệp apk từ tệp đó. Tất cả những gì bạn phải làm là đổi tên tệp “nhl.apks” thành “nhl.zip” và giải nén tệp đó bình thường bằng trình giải nén tệp zip. Bây giờ bạn sẽ tìm thấy nhiều tệp apk trong các thư mục tách và độc lập.

Extracting APKs from AAB

Bây giờ, bạn đã chuyển đổi thành công tệp .aab thành tệp .apk, bạn có thể cài đặt chúng bình thường trên thiết bị của mình. Về mặt kỹ thuật, đây là cách cài đặt tệp .aab trên thiết bị Android.

Chờ đã, nó vẫn chưa kết thúc. Bạn có nhận thấy bất kỳ vấn đề nào với lệnh trên không? Có, nó đang tạo ra rất nhiều tệp apk gỡ lỗi và bạn không chắc mình cần cài đặt tệp nào? Điều gì sẽ xảy ra nếu bạn muốn apk đã ký hoặc apk đã ký chung từ gói ứng dụng Android. May mắn thay, bundletool đi kèm với các cờ khác nhau để trích xuất gói ứng dụng cần thiết từ tệp .aab.

Đây là bảng gồm các cờ bundletool khác nhau và cách sử dụng chúng.

-ks-pass=Pass:

-ks-key-alias=

-key-pass=Mật khẩu:

Hãy xem cách sử dụng các cờ này bằng lệnh bundletool.

Tạo apk đã ký bằng kho khóa của bạn

Xem Thêm : Những hình ảnh ngày 8/3 đẹp nhất – Thủ Thuật Tin Học

Để tạo tệp apk đã ký bằng tệp kho khóa của riêng bạn, hãy chạy lệnh sau.

java -jar bundletool.jar Build apks -bundle=nhl.aab -output=nhl.apks -ks= keystore.jks -ks-pass=pass:your_keystore_password -ks-key-alias=your_key_alias -key-pass=pass:your_key_password mạnh> mạnh>

Thao tác này sẽ tạo lại tệp “nhl.apks”, bạn cần đổi tên tệp thành “nhl.zip” và giải nén tệp zip để xem gói ứng dụng đã ký trong một thư mục tách và riêng biệt.

Tạo apk chung từ gói ứng dụng Android

Nếu bạn chỉ muốn tạo apk từ tệp .aab, hãy chạy lệnh sau.

java -jar bundletool.jar build-apks -bundle=nhl.aab -output=nhl.apks -mode=universal

Lệnh này sẽ tạo tệp nhl.apks mà bạn cần phải đổi tên lại thành nhl.zip và giải nén để lấy tệp universnal.apk.

Ghi đè tệp .apks hiện có

Nếu bạn muốn ghi đè tệp .apks cũ bằng tệp mới, chỉ cần thêm cờ -overwrite vào lệnh của bạn như minh họa bên dưới.

java -jar bundletool.jar build-apks -bundle=nhl.aab -output=nhl.apks -ghi đè

Trích xuất tệp apk chung đã ký từ gói ứng dụng Android

Bây giờ, hãy kết hợp tất cả các cờ trên để tạo một tệp apk chung và ghi đè lên kho lưu trữ apk hiện có nếu có.

java -jar bundletool.jar build-apks -bundle=nhl.aab -output=nhl.apks -overwrite -mode= universal -ks=keystore.jks -ks-pass=pass:mật khẩu kho khóa của bạn -ks-key-alias=bí danh khóa của bạn -key -pass=pass :cụm mật khẩu chính của bạn

Sau khi chạy lệnh này, bạn cần đổi tên tệp “nhl.apks” thành “nhl.zip” và giải nén nó để tìm tệp “universal.apk” đã ký.

extracting universal APK from App Bundle

Có một số cờ nâng cao hơn như -device-spec, -connected-device, -device-id để tạo apk và cài đặt gói ứng dụng Android trên cấu hình thiết bị cụ thể hoặc được kết nối. Bên cạnh chúng, bạn có các lệnh tổng số giải nén-apks và get-size cho nhiều trường hợp sử dụng hơn. Bạn có thể tìm hiểu thêm về chúng trên trang bundletool dành cho nhà phát triển Android tại đây.

Kết luận giải nén file apk từ aab

Tóm lại, một cách khả thi để cài đặt gói ứng dụng Android (.aab) là tải trực tiếp gói đó lên cửa hàng Google Play cho một nhóm người thử nghiệm hoặc chuyển đổi tệp .aab thành tệp .apk bằng cách sử dụng bundletool chỉ huy. Nếu ứng dụng của bạn lớn và có nhiều người dùng đang hoạt động, hãy sử dụng bundletool để kiểm tra ứng dụng của bạn trên các cấu hình thiết bị khác nhau và triển khai các bản cập nhật một cách từ từ. Tuy nhiên, nếu ứng dụng của bạn là ứng dụng mới, bạn có thể muốn thêm một gói ứng dụng ở dạng alpha đã đóng để thu thập phản hồi.

Về lâu dài, tốt hơn hết là trước tiên hãy giải nén gói ứng dụng khỏi gói ứng dụng. Và kiểm tra thủ công các bản cập nhật trên thiết bị cục bộ của bạn trước khi gửi chúng từ bảng điều khiển google play của bạn.

Nguồn: https://xettuyentrungcap.edu.vn
Danh mục: Hỏi Đáp

Related Articles

Back to top button