Lỗi ANR Crash với Unity 6
1. Dấu hiệu
Xem trên Play Console, hoặc trong Android LogCat
Lỗi: Native method - com.google.androidgamesdk.GameActivity.onPauseNative
Lỗi: Native method - com.google.androidgamesdk.GameActivity.onSurfaceDestroyedNative
2. Nguyên nhân
Từ Unity 6 sẽ có 2 loại Activity:
UnityPlayerActivity: Vẫn là loại activity cũ từ các phiên bản Unity trước
GameActivity: Là loại Activity mới nhất.
Trong Manifest mặc đinh ban đầu khi tạo mới project sẽ như sau:

Trong Application Entry Point thì mặc định là chọn Game Activity ⇒ Do đó, nếu giữ cầu hình mặc định trong Manifest thì khi chạy runtime sẽ gây lỗi và cần phải comment code chỉ giữ lại loại Activity tương ứng với setting trong Application Entry Point.
3. Cách fix lỗi
Bước 1: Vào Project Settings ⇒ Android ⇒ Other Settings ⇒ Application Entry Point ⇒ Tích chọn Activity

Bước 2: Vào Manifest ⇒ Comment dòng code như hình

4. Mở rộng
Nên dùng Acitity vì hiện tại đa số các thư viện bên thứ 3 như Firebase, Facebook, Admob ... chưa hỗ trợ, hoặc phù hợp với GameActivity nên rất dễ gây xung đột và lỗi Crash ANR
Last updated