Thêm các biểu tượng gốc vào bản phát hành

Theo mặc định, các thư viện mã gốc sẽ bị xoá trong các bản phát hành của ứng dụng. Việc xoá này bao gồm việc xoá bảng biểu tượng và thông tin gỡ lỗi có trong mọi thư viện gốc mà ứng dụng của bạn sử dụng. Việc xoá thư viện mã gốc sẽ giúp tiết kiệm đáng kể kích thước; tuy nhiên, bạn không thể chẩn đoán sự cố trên Google Play Console do thiếu thông tin (chẳng hạn như tên lớp và hàm). Để gỡ lỗi sự cố, bạn phải đưa tệp biểu tượng gỡ lỗi vào ứng dụng trong Play Console.

Tải tệp biểu tượng lên

Google Play Console báo cáo các sự cố với mã gốc trong Android vitals. Qua vài bước, bạn có thể tạo và tải một tệp biểu tượng gỡ lỗi gốc lên cho ứng dụng. Tệp này sẽ kích hoạt dấu vết ngăn xếp sự cố gốc tượng trưng (bao gồm tên lớp và tên hàm) trong Android vitals, cho phép bạn gỡ lỗi ứng dụng trong bản phát hành chính thức. Các bước này sẽ khác nhau tuỳ thuộc vào phiên bản của trình bổ trợ Android cho Gradle được sử dụng trong dự án và liệu bạn đang sử dụng Android App Bundle (nên dùng) hay APK.

Trình bổ trợ Android cho Gradle phiên bản 4.1 trở lên

Nếu dự án của bạn tạo một Android App Bundle (AAB), bạn có thể định cấu hình bản dựng để tự động đưa tệp biểu tượng gỡ lỗi gốc vào AAB để tệp này được tải lên Play Console khi bạn phát hành ứng dụng. Để đưa tệp này vào bản phát hành, hãy thêm nội dung sau vào tệp build.gradle.kts của ứng dụng:

android.buildTypes.release.ndk.debugSymbolLevel = { SYMBOL_TABLE | FULL }

Chọn cấp biểu tượng gỡ lỗi từ tuỳ chọn sau:

  • Sử dụng SYMBOL_TABLE để lấy tên hàm trong dấu vết ngăn xếp tượng trưng của Play Console. Cấp độ này hỗ trợ tombstone.
  • Sử dụng FULL để lấy tên hàm, tệp và số dòng trong dấu vết ngăn xếp tượng trưng của Play Console.

Nếu dự án của bạn tạo một APK, hãy sử dụng chế độ cài đặt android.buildTypes.release.ndk.debugSymbolLevel được hiển thị trước đó để tạo tệp biểu tượng gỡ lỗi gốc riêng biệt. Tải tệp biểu tượng gỡ lỗi gốc lên Google Play Console theo cách thủ công (quy trình này tương tự như việc tải tệp ánh xạ lên để gỡ rối mã nguồn cho dấu vết ngăn xếp). Là một phần trong quy trình xây dựng, trình bổ trợ Android cho Gradle sẽ xuất ra tệp này tại vị trí trong dự án như dưới đây:

app/build/outputs/native-debug-symbols/<var>variant-name</var>/native-debug-symbols.zip

Trình bổ trợ Android cho Gradle phiên bản 4.0 trở về trước (và các hệ thống xây dựng khác)

Là một phần trong quy trình xây dựng, trình bổ trợ Android cho Gradle sẽ lưu giữ một bản sao của các thư viện chứa biểu tượng gỡ lỗi trong thư mục của dự án. Cấu trúc thư mục này tương tự như sau:

app/build/intermediates/cmake/universal/release/obj/
├── armeabi-v7a/
│   ├── libgameengine.so
│   ├── libothercode.so
│   └── libvideocodec.so
├── arm64-v8a/
│   ├── libgameengine.so
│   ├── libothercode.so
│   └── libvideocodec.so
├── x86/
│   ├── libgameengine.so
│   ├── libothercode.so
│   └── libvideocodec.so
└── x86_64/
    ├── libgameengine.so
    ├── libothercode.so
    └── libvideocodec.so
  1. Nén nội dung của thư mục này:

    cd app/build/intermediates/cmake/universal/release/obj
    zip -r symbols.zip .
    
  2. Tải tệp symbols.zip lên Google Play Console theo cách thủ công.