Khắc phục các lỗi thường gặp của Trình quản lý thông tin xác thực

Hướng dẫn này liệt kê các mã lỗi và nội dung mô tả phổ biến liên quan đến Trình quản lý thông tin xác thực, đồng thời cung cấp một số thông tin về nguyên nhân gây ra các lỗi đó.

Mã lỗi và nội dung mô tả Nguyên nhân

android.os.TransactionTooLargeException

Điều này là do một vấn đề đã biết, trong đó API credentialManager.getCredential() trên Android 14 trở lên không hiển thị hộp thoại đăng nhập khi có nhiều Tài khoản Google trên thiết bị. Vấn đề này chỉ thể hiện qua GetGoogleIdOption chứ không phải GetSignInWithGoogleOption. Vấn đề này đã được khắc phục trong Dịch vụ Google Play phiên bản 24.40.XX trở lên.

CreateCredentialCancellationException hoặc GetCredentialCancellationException

Người dùng đã huỷ đăng ký hoặc truy xuất khoá truy cập.

Người dùng đã chọn không tạo hoặc sử dụng thông tin xác thực. Giờ đây, bạn có thể điều chỉnh giao diện người dùng để cung cấp một phương thức đăng nhập thay thế hoặc chuyển sang các bước tiếp theo trong quy trình.

CreateCredentialCustomException hoặc GetCredentialCustomException

Khi sử dụng SDK của bên thứ ba để thực hiện lệnh gọi API bằng một đối tượng yêu cầu phân lớp CreateCustomCredentialRequest hoặc GetCustomCredentialOption, bạn có thể gặp lỗi. Nếu điều này xảy ra, hãy kiểm tra SDK để tìm các hằng số loại ngoại lệ tuỳ chỉnh khớp với e.type. Nếu không tìm thấy kết quả trùng khớp, bạn có thể loại bỏ hoặc ghi lại ngoại lệ một cách an toàn.

CreateCredentialInterruptedException hoặc GetCredentialInterruptedException

Hoạt động có thể đã bị gián đoạn vì người dùng đã chuyển đến phần cài đặt để định cấu hình lại trình quản lý mật khẩu. Có thể còn có các lý do khác dẫn đến sự gián đoạn. Vui lòng thử gọi lại.

CreateCredentialUnknownException

Trong quá trình lưu mật khẩu, đã phát hiện phản hồi lỗi mật khẩu từ Cơ chế một lần chạm 16: [28431] Bỏ qua quá trình lưu mật khẩu vì có khả năng người dùng được tính năng Tự động điền của Android nhắc.

Lỗi này chỉ ảnh hưởng đến Android 13 trở xuống khi Google là nhà cung cấp dịch vụ Tự động điền được chỉ định. Trong những trường hợp như vậy, người dùng sẽ nhận được lời nhắc lưu từ tính năng Tự động điền và mật khẩu sẽ được lưu trữ trong Trình quản lý mật khẩu của Google. Điều quan trọng là thông tin đăng nhập được lưu bằng tính năng Tự động điền bằng Google sẽ được đồng bộ hoá hai chiều với Credential Manager API. Do đó, bạn có thể bỏ qua lỗi này một cách an toàn.

CreatePublicKeyCredentialDomException và GetPublicKeyCredentialDomException

Có thể trường hợp ngoại lệ DOM chứa một domError cụ thể hơn. Bạn có thể liên kết sự kiện đó với WebAuthn DomException để biết thêm thông tin.

CreatePublicKeyCredentialDomException và GetPublicKeyCredentialDomException

Không thể xác thực yêu cầu đến.

Máy chủ của trình quản lý mật khẩu không nhận dạng được mã gói của ứng dụng. Điều này cho thấy có thể xảy ra vấn đề với việc tích hợp phía máy chủ, cụ thể là thiết lập đường liên kết đến tài sản kỹ thuật số. Kiểm tra kỹ độ chính xác của mã gói và SHA trong tệp đường liên kết đến tài sản.

CreatePublicKeyCredentialDomException:

Không thể tạo khoá trong quá trình đăng ký

Vấn đề này có thể xảy ra khi người dùng đóng hộp thoại khoá màn hình trong quá trình đăng ký.

CreatePublicKeyDomException và GetPublicKeyCredentialDomException

Người dùng đã huỷ quá trình đăng ký khoá truy cập.

Người dùng đã huỷ thao tác truy xuất khoá truy cập.

Vấn đề này có thể xảy ra khi người dùng đóng hộp thoại vân tay trong quá trình đăng ký / truy xuất khoá truy cập.

GetCredentialProviderConfigurationException & CreateCredentialProviderConfigurationException

getCredentialAsync không tìm thấy phần phụ thuộc nhà cung cấp

createCredentialAsync không tìm thấy phần phụ thuộc nhà cung cấp

Thiếu phần phụ thuộc androidx.credentials:credentials-play-services-auth:<latest-version>.

GetCredentialUnsupportedException hoặc CreateCredentialUnsupportedException

Thiết bị của bạn không hỗ trợ trình quản lý thông tin xác thực

Đảm bảo thư viện thông tin xác thực của bạn được cập nhật lên phiên bản 1.2.1 trở lên.

GetPublicKeyCredentialException

Không giải mã được thông tin xác thực

Vấn đề này xảy ra khi bạn cố gắng sử dụng khoá truy cập sau khi đăng xuất và đăng nhập lại vào Tài khoản Google. Hướng dẫn người dùng đăng nhập lại vào Tài khoản Google của họ trên thiết bị.

NoCredentialException

Không tìm thấy thông tin xác thực trùng khớp

Không tìm thấy thông tin xác thực nào phù hợp trên thiết bị. Điều này là bình thường nếu người dùng chưa từng lưu bất kỳ thông tin đăng nhập nào.

Không thể tạo khoá truy cập do dữ liệu đã mã hoá bị khoá

Người dùng cần đặt lại dữ liệu phía máy chủ Chrome. Dữ liệu này bao gồm cả dấu trang và chế độ cài đặt Chrome, ngoài mật khẩu và khoá truy cập bạn đã lưu. Để biết thêm thông tin về dữ liệu mà Chrome lưu trữ, hãy chuyển đến trang Dữ liệu Chrome trong tài khoản của bạn.

  1. Truy cập vào chrome.google.com/sync.
  2. Ở dưới cùng, hãy chọn Xoá dữ liệu.
  3. Trên thiết bị, hãy bật tính năng Đồng bộ hoá trong Chrome.

Lỗi khi bắt đầu đăng nhập: 8: Lỗi nội bộ không xác định.

Thiết bị có thể chưa được thiết lập đúng cách bằng Tài khoản Google. Có thể có vấn đề với cách tạo JSON khoá truy cập. Kiểm tra kỹ việc triển khai để đảm bảo tính chính xác.

Không thể lấy tài khoản đồng bộ hoá

Dịch vụ Google Play phiên bản 24.40.XX trở lên sẽ cung cấp thêm mã lỗi chứa nhiều thông tin. Ví dụ: thay vì "Không thể lấy tài khoản đồng bộ hoá", giờ đây, phương thức gọi sẽ nhận được thông báo lỗi huỷ.