Khi đăng nhập vào Dịch vụ trò chơi của Play, bạn sẽ nhận được danh tính người chơi của mình, đây là danh tính dành riêng cho trò chơi ở cấp nền tảng dùng cho người chơi Android. Danh tính này giúp xây dựng mối quan hệ giữa trò chơi của bạn và người chơi. Người chơi thường muốn sử dụng thông tin nhận dạng này để đăng nhập hơn so với các hệ thống tập trung khác.
Ngoài ra, việc đăng nhập còn cung cấp cho bạn một giá trị nhận dạng nhất quán, mạnh mẽ mà bạn có thể dùng làm khóa cho hệ thống lưu trên đám mây. Tính năng lưu vào đám mây được đánh giá cao; nó cho phép người chơi làm những việc sau:
- Tiếp tục tại thời điểm đã dừng lại nếu họ thay đổi hoặc đặt lại thiết bị của mình
- Chơi trò chơi trên nhiều thiết bị (ví dụ như trên một điện thoại khác hoặc Chromebook)
- Gỡ cài đặt và cài đặt lại trò chơi
Bạn có thể sử dụng danh tính trong Dịch vụ trò chơi của Play làm khoá cho giải pháp lưu vào đám mây của mình hoặc sử dụng dịch vụ Trò chơi đã lưu miễn phí.
Dịch vụ trò chơi của Play (PGS) hỗ trợ tính năng tự động đăng nhập, một cách đăng nhập người chơi không gây phiền hà, cũng như tính năng đăng nhập thủ công, một quy trình chỉ cần một lần nhấp. Tài liệu này mô tả các phương thức đăng nhập này.
Quy trình đăng nhập được đề xuất
Để đăng nhập thành công người chơi vào trò chơi của bạn, hãy sử dụng quy trình đăng nhập sau:
- Trong quá trình khởi động trò chơi, hãy thử tính năng Tự động đăng nhập để tự động đăng nhập người chơi.
- Nếu tính năng tự động đăng nhập không hoạt động và thiết bị của người dùng đang có kết nối mạng, hãy thử Đăng nhập thủ công.
- Nếu người dùng từ chối đăng nhập thủ công, hãy ghi nhớ lựa chọn của người dùng và không hiển thị lại phương thức đăng nhập thủ công, nhưng tiếp tục thử phương thức Tự động đăng nhập khi khởi động.
Ngoài ra, bạn nên đảm bảo rằng người dùng có thể đăng nhập vào trò chơi của bạn bằng tài khoản Dịch vụ trò chơi của Play thông qua một nút chuyên dụng, dễ tìm.
Tự động đăng nhập
Tính năng đăng nhập tự động cho phép người dùng đăng nhập vào trò chơi của bạn mà không gặp bất kỳ trở ngại nào – quá trình này hoàn toàn tự động! Nếu trò chơi của bạn yêu cầu người dùng đăng nhập và chế độ cài đặt đăng nhập tự động đang bật (trong ứng dụng Google Play Games), thì bạn sẽ nhận được thông tin xác thực của người dùng đó trong PGS, đồng thời người dùng sẽ thấy trải nghiệm đăng nhập vào PGS.
Đăng nhập tự động là một chế độ cài đặt mà người dùng có thể kiểm soát. Người dùng có thể chọn chế độ tự động đăng nhập vào tất cả các trò chơi, hoặc chế độ hỏi lại cho mỗi lần đăng nhập.
Đăng nhập thủ công
Nếu người dùng không tự động đăng nhập vào trò chơi, bạn có thể yêu cầu họ đăng nhập theo cách thủ công. Người dùng có thể đăng nhập chỉ bằng một lần nhấp vào hộp thoại xuất hiện ở đầu trò chơi.
Cho phép cửa sổ bật lên PGS để có trải nghiệm đăng nhập chính xác
Khi sử dụng PGS, người dùng cần biết họ đã đăng nhập. Bạn có thể thực hiện việc này bằng cách hiển thị trải nghiệm đăng nhập PGS.
Để hiển thị trải nghiệm đăng nhập, hãy gọi phương thức setViewForPopups()
của lớp GamesClient
trong quá trình khởi động trò chơi. Điều này rất quan trọng để mang lại trải nghiệm chính xác cho người dùng.
PGS và phạm vi OAuth
PGS dựa vào hệ thống OAuth để cho phép người dùng cấp cho trò chơi của bạn quyền truy cập vào tài khoản của họ. Phạm vi OAuth là các quyền mà bạn (với tư cách là nhà phát triển) có thể yêu cầu. Nếu được cấp, các quyền này sẽ cho phép trò chơi của bạn thay mặt người dùng gọi một số API nhất định và cũng cấp cho bạn quyền truy cập vào một số phần nhất định trong Tài khoản Google của họ.
PGS có một phạm vi riêng cho trò chơi (games-lite
) và dựa vào một phạm vi khác (drive.appdata
) nếu trò chơi của bạn sử dụng tính năng trò chơi đã lưu. Tính năng trò chơi đã lưu cho phép truy cập vào tài khoản Google Drive của người dùng, đây là nơi lưu trữ dữ liệu trò chơi.
Trò chơi của bạn có thể yêu cầu bất kỳ phạm vi nào mà bạn cần để tạo trải nghiệm trò chơi tuyệt vời cho người dùng. Trò chơi của bạn có thể yêu cầu tất cả các phạm vi cần thiết trong một gói, hạn chế số lượng yêu cầu truy cập vào Tài khoản Google. Tuy nhiên, phương pháp này có một hạn chế lớn. Nếu bạn yêu cầu nhiều phạm vi dành riêng cho PGS, thì tính năng tự động đăng nhập sẽ không thành công. Tính năng đăng nhập tự động là cách tốt nhất để người chơi đăng nhập vào trò chơi của bạn.
Phương pháp hay nhất là sử dụng các yêu cầu phạm vi gia tăng. Trò chơi của bạn nên yêu cầu các phạm vi chỉ dành cho PGS trước tiên trong yêu cầu ban đầu, sau đó yêu cầu các phạm vi khác một cách riêng biệt tại thời điểm phù hợp hơn.
Quyền truy cập OAuth được cấp bằng một màn hình khác nhau cho mỗi phạm vi. Điều này cho phép người dùng quyết định một cách chi tiết về phạm vi cần cấp quyền truy cập. Bằng cách sử dụng tính năng tự động đăng nhập chỉ với các phạm vi PGS, người dùng sẽ không phải tương tác với bất kỳ lời nhắc OAuth nào, nhờ đó giảm bớt sự phiền hà khi đăng nhập.
Hỗ trợ nhiều phương thức đăng nhập
PGS cung cấp thông tin nhận dạng cho người chơi trong trò chơi Android, nhưng không nhất thiết phải là thông tin nhận dạng duy nhất liên kết với người dùng của bạn. Bạn có thể đăng nhập cho người chơi của bạn bằng cách sử dụng cùng lúc PGS, mã nhận dạng của mạng xã hội và hệ thống mã nhận dạng trong trò chơi của riêng bạn. Mỗi hệ thống đều cung cấp những giá trị riêng cho cả bạn cũng như người chơi của bạn và kết hợp cùng nhau để tạo ra trải nghiệm tuyệt vời cho người chơi Android.
Truy xuất và xác minh danh tính người chơi một cách an toàn để tích hợp phụ trợ
Bạn có thể yêu cầu mã Xác thực máy chủ để cho phép máy chủ của bạn giao tiếp trực tiếp với các máy chủ Dịch vụ trò chơi của Play, thông qua API REST với quyền của người chơi đã đăng nhập. Điều này cho phép truy cập trực tiếp vào mã nhận dạng, hồ sơ và các thông tin khác của người chơi (chẳng hạn như danh sách bạn bè, nếu được ủy quyền). Nếu lưu trữ bất kỳ Mã nhận dạng người chơi nào, mã nhận dạng bạn bè hoặc dữ liệu liên quan nào khác trong phần phụ trợ, thì bạn phải sử dụng phương thức này để loại bỏ nguy cơ thao tác từ phía thiết bị của các trường này.
Ngoài ra, đối với một số người chơi và trò chơi cũ, mã nhận dạng người chơi do SDK Android trả về cho người chơi có thể không giống với mã mà những người chơi khác nhìn thấy trong cùng một trò chơi – điều này liên quan mật thiết khi sử dụng danh sách bạn bè. Tuy nhiên, player_id
được trả về trong API REST luôn nhất quán và luôn là mã nhận dạng mà những người chơi khác nhìn thấy.
Để biết thêm thông tin chi tiết, vui lòng xem tài liệu về Truy cập ngoại tuyến và API REST.
Triển khai ứng dụng
Để tìm hiểu cách triển khai việc hỗ trợ đăng nhập trên Android, vui lòng xem bài viết Đăng nhập vào trò chơi trên Android.