Xác thực nền tảng

Bước đầu tiên trong việc tích hợp trò chơi của bạn với Dịch vụ trò chơi của Google Play (PGS) là triển khai Xác thực nền tảng. Bạn cần phải làm việc này để truy cập vào tất cả các tính năng khác như thành tích, bảng xếp hạng và sự kiện.

Vì SDK Dịch vụ trò chơi của Play tự động thực hiện xác thực nền tảng khi trò chơi khởi chạy, nên bạn cần tích hợp SDK PGS phiên bản 2 với trò chơi của mình và triển khai quy trình xác thực được đề xuất để trò chơi của bạn sẵn sàng triển khai và đáp ứng các nguyên tắc về trải nghiệm người dùng của Google Play Games Level Up.

Khái niệm xác thực

Trong Dịch vụ trò chơi của Play phiên bản 2, khái niệm "đăng nhập" được tách thành 2 lớp riêng biệt: xác thực nền tảngxác thực trong trò chơi.

Xác thực nền tảng

Dịch vụ trò chơi của Play cung cấp một lớp tương tác trên nền tảng. API này quản lý mối quan hệ của người chơi với hệ sinh thái Google Play Games bằng cách sử dụng Hồ sơ người chơi để truy cập vào các tính năng như thành tích, bảng xếp hạng và nhiệm vụ. Xác thực nền tảng có các đặc điểm chính sau:

  • Không hiển thị và tự động: Quá trình xác thực sẽ tự động diễn ra ở chế độ nền khi trò chơi khởi chạy. Dịch vụ trò chơi của Play không yêu cầu nút Đăng nhập theo cách thủ công.
  • Mã nhận dạng người chơi: Sau khi xác thực thành công nền tảng, Dịch vụ trò chơi của Play sẽ cung cấp một Mã nhận dạng người chơi ổn định. Mã nhận dạng này nhất quán trên các thiết bị đối với cùng một trò chơi. Sử dụng mã nhận dạng này chủ yếu để theo dõi các tính năng của nền tảng, chẳng hạn như tiến trình đạt được thành tích.
  • Tách rời: Bạn không được dùng dịch vụ trò chơi của Play làm hệ thống nhận dạng chính của trò chơi để quản lý tài khoản trong trò chơi (IGA), tiến trình chơi hoặc kho đồ của người chơi. Dịch vụ trò chơi của Play đóng vai trò là một mã nhận dạng nền tảng liên tục.

Mã nhận dạng người chơi

Mã nhận dạng người chơi là giá trị nhận dạng cho tài khoản người chơi sử dụng Dịch vụ trò chơi của Play. Trò chơi của bạn có thể truy xuất mã nhận dạng người chơi của mọi người chơi đăng nhập vào trò chơi đó bằng phương thức xác thực của Dịch vụ trò chơi của Play. Quy trình tích hợp ứng dụng trò chơi, quy trình tích hợp máy chủ trò chơidịch vụ lưu vào đám mây có thể sử dụng mã nhận dạng này để truy cập an toàn vào dữ liệu người chơi trong Dịch vụ trò chơi của Play.

Mã nhận dạng người chơi của một người dùng không thay đổi khi họ chơi trò chơi của bạn trên nhiều thiết bị. Tuy nhiên, mã nhận dạng người chơi có thể thay đổi giữa các trò chơi. Để biết thêm thông tin, hãy xem bài viết về Mã nhận dạng người chơi thế hệ mới.

Xác thực trong trò chơi

Bạn quản lý tài khoản trong trò chơi (IGA), đây là hệ thống nhận dạng liên kết tiến trình, kho đồ và đơn vị tiền tệ của người chơi trong trò chơi.

  • Danh tính chính: Bạn có thể sử dụng phần phụ trợ của riêng mình, Đăng nhập bằng Google (SiWG) hoặc các nhà cung cấp khác làm phương thức đăng nhập chính.
  • Tính độc lập: Người chơi có thể đăng nhập vào Dịch vụ trò chơi của Play (Nền tảng nhận dạng) để nhận thành tích trong khi đăng nhập vào bất kỳ IGA cụ thể nào (ví dụ: tài khoản khách hoặc tài khoản SiWG cụ thể).
  • Quản lý nhiều IGA: Dịch vụ trò chơi của Play chỉ xử lý quy trình xác thực nền tảng. Trò chơi của bạn quản lý quy trình xác thực chính của người chơi vào IGA. Điều này có nghĩa là không có thay đổi nào đối với các quy trình hiện có của trò chơi để người chơi chuyển đổi giữa các IGA. Khi người chơi chuyển đổi tài khoản, họ vẫn được xác thực với nền tảng Play Games thông qua PGS và bạn tiếp tục gửi dữ liệu của họ liên quan đến thành tích và các tính năng khác của PGS dựa trên Mã nhận dạng người chơi liên tục.

Tính liên tục trên nhiều nền tảng với SiWG

Để giúp người chơi duy trì tiến trình trên Android, iOS và web, hãy sử dụng tính năng Đăng nhập bằng Google làm phương thức xác thực chính trong trò chơi. Hãy cân nhắc những điều sau:

  • Nút Đăng nhập bằng Google: Trong PGS phiên bản 1, nút Google Play thường xử lý cả hoạt động đăng nhập vào nền tảng và trò chơi. Trong phiên bản 2, đây là các quy trình riêng biệt. Triển khai nút Đăng nhập bằng Google tiêu chuẩn để người chơi xác thực và truy cập vào IGA của họ.
  • SDK Đăng nhập bằng Google:
    • Đối với cả Android và iOS, hãy sử dụng SDK Đăng nhập bằng Google tiêu chuẩn để xác thực người chơi vào IGA của họ.
    • Sử dụng Google Open ID làm giá trị nhận dạng chính cho tài khoản trong trò chơi của người chơi.
    • Sử dụng Mã nhận dạng người chơi của Dịch vụ trò chơi của Play để báo cáo tiến trình của người chơi trên các tính năng của Play Games, chẳng hạn như thành tích.

Đề xuất tích hợp

Để tích hợp trò chơi với Dịch vụ trò chơi của Play, hãy làm theo các bước được đề xuất sau:

Khởi chạy và xác thực

Đây là bước bắt buộc để khởi động và xác thực trò chơi của bạn:

Triển khai quy trình xác thực nền tảng bằng cách khởi động SDK Dịch vụ trò chơi của Play phiên bản 2 khi khởi động. Để biết thêm thông tin, hãy xem bài viết xác thực nền tảng cho trò chơi Android. Bạn phải thực hiện bước này để truy cập vào các tính năng của Dịch vụ trò chơi của Play, chẳng hạn như thành tích và bảng xếp hạng.

Quá trình xác thực chạy dưới dạng một tiến trình nền ngầm trong khi khởi động trò chơi. Người dùng hiện tại của Dịch vụ trò chơi của Play sẽ thấy một thông điệp chào mừng sau khi xác thực thành công. Những người dùng chưa có hồ sơ Dịch vụ trò chơi của Play sẽ được nhắc tạo hồ sơ trong quá trình khởi chạy SDK.

Lời nhắc tự động đăng nhập

Tạo tiểu sử

Người chơi cần có hồ sơ Dịch vụ trò chơi của Play để tương tác với nền tảng này. Một số người chơi có thể không có hồ sơ Dịch vụ trò chơi của Play khi họ bắt đầu chơi trò chơi của bạn. Những người chơi này sẽ được yêu cầu tạo một tài khoản.

Theo mặc định, lời nhắc tạo hồ sơ được kích hoạt tự động sẽ xuất hiện khi bạn khởi chạy một trò chơi mà không có hồ sơ Dịch vụ trò chơi của Play.

Lời nhắc tạo hồ sơ khi bạn khởi chạy một trò chơi.
Lời nhắc tạo hồ sơ khi bạn chạy một trò chơi (nhấp để phóng to).

Xác thực trong trò chơi

Sau khi xác thực nền tảng thành công, nhà phát triển nên triển khai các bước sau để người chơi có thể truy cập vào IGA của họ, tuỳ thuộc vào trạng thái hiện tại của trò chơi:

  1. Nếu có một phiên chơi đang hoạt động trên thiết bị, hãy cho phép người chơi tiếp tục phiên hiện tại.
  2. Nếu không có phiên trò chơi nào đang hoạt động:
    1. Trong trường hợp khôi phục liền mạch, khi một IGA được phát gần đây nhất được liên kết với Mã nhận dạng người chơi PGS, hãy tiến hành tự động khôi phục IGA được liên kết.
    2. Nếu không, hãy cho người chơi thấy màn hình đăng nhập hoặc tạo tài khoản được chỉ định của ứng dụng. Sau đó, người chơi có thể chọn phương thức xác thực mà họ muốn để thiết lập hoặc đăng nhập vào một IGA hiện có.

Phạm vi OAuth

Dịch vụ trò chơi của Play 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ọ. Dịch vụ trò chơi của Play có một phạm vi riêng cho trò chơi (games-lite), đồng thời 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.

Khi sử dụng SDK Dịch vụ trò chơi của Play phiên bản 2, bạn có thể yêu cầu thêm phạm vi OAuth. Nếu cần thêm phạm vi OAuth, bạn nên gọi requestServerSideAccess. Để biết thêm thông tin, hãy xem phần lấy mã uỷ quyền máy chủ hoặc truy xuất mã uỷ quyền máy chủ.

Nguyên tắc về trải nghiệm người dùng đối với quy trình xác thực lý tưởng

Các nguyên tắc sau đây giải thích quy trình xác thực được đề xuất khi tích hợp PGS phiên bản 2. Các trường hợp này bao gồm người dùng mới, người dùng hiện tại, người dùng cũ và chế độ khách.

Người chơi mới

Quy trình này áp dụng cho người dùng chạy trò chơi lần đầu tiên trên một thiết bị chưa từng chơi trò chơi này trước đây.

  1. Khi khởi chạy, PGS SDK sẽ khởi chạy để xác thực danh tính nền tảng của người dùng (Mã nhận dạng người chơi PGS).
  2. Sau bước bắt tay ngầm này, trò chơi sẽ hiển thị các lựa chọn tạo IGA cho người chơi, chẳng hạn như Tạo tài khoản mới, Đăng nhập bằng Google hoặc các phương thức đăng nhập bằng tài khoản mạng xã hội khác.
  3. Sau khi người chơi tạo hoặc chọn một tài khoản IGA, trò chơi sẽ liên kết tài khoản này với giá trị nhận dạng chính đã chọn trong phần phụ trợ của trò chơi.
  4. Trò chơi cũng liên kết IGA đã chọn này với mã nhận dạng người chơi PGS, đánh dấu IGA này là IGA được phát gần đây nhất để khôi phục liền mạch.
Người chơi mới có Hồ sơ PGS đã đăng nhập
Người chơi mới có Trang doanh nghiệp trên Google đã đăng nhập (nhấp để phóng to).
Người chơi mới không có hồ sơ PGS
Người chơi mới không có hồ sơ PGS (nhấp để phóng to).
Người chơi mới có hồ sơ PGS đã đăng nhập
Người chơi mới có hồ sơ PGS đã đăng nhập (nhấp để phóng to).

Người chơi có phiên đang hoạt động

Tình huống này mô tả người chơi khởi chạy trò chơi trên một thiết bị mà họ đã có một phiên hoạt động. Mục tiêu là mang đến trải nghiệm liền mạch khi truy cập.

  1. Khi người chơi khởi chạy ứng dụng, PGS sẽ xác thực âm thầm ở chế độ nền, cung cấp cho bạn mã nhận dạng người chơi để theo dõi tiến trình so với thành tích và các tính năng khác của trò chơi trên Play.
  2. Đồng thời, nếu có thể, trò chơi sẽ bỏ qua màn hình đăng nhập và ngay lập tức đăng nhập người chơi vào phiên IGA đang hoạt động hoặc phiên IGA đã chơi gần đây nhất được liên kết với Player ID của họ, để họ có thể tiếp tục chơi ngay lập tức.
Khởi chạy trò chơi trên cùng một thiết bị bằng hồ sơ PGS đã đăng nhập
Khởi chạy trò chơi trên cùng một thiết bị bằng hồ sơ PGS đã đăng nhập (nhấp để phóng to).
Khởi chạy trò chơi trên cùng một thiết bị bằng hồ sơ PGS đã đăng xuất
Chạy trò chơi trên cùng một thiết bị có hồ sơ PGS đã đăng xuất (nhấp để phóng to).
Khởi chạy trò chơi trên cùng một thiết bị mà không có hồ sơ PGS
Khởi chạy trò chơi trên cùng một thiết bị mà không có hồ sơ PGS (nhấp để phóng to).
Khởi chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng nhập và một IGA được liên kết
Khởi chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng nhập và một IGA được liên kết (nhấp để phóng to).
Khởi chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng nhập và không có IGA được liên kết
Khởi chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng nhập và không có IGA được liên kết (nhấp để phóng to).
Khởi chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng xuất
Chạy trò chơi trên thiết bị mới bằng hồ sơ PGS đã đăng xuất (nhấp để phóng to).
Khởi chạy trò chơi trên thiết bị mới mà không có hồ sơ PGS
Khởi chạy trò chơi trên thiết bị mới mà không có hồ sơ PGS (nhấp để phóng to).

Người chơi chuyển đổi tài khoản

Quy trình này xảy ra khi người chơi có phiên hoạt động chuyển đến phần cài đặt trò chơi để chuyển đổi tài khoản. Ví dụ: đăng xuất khỏi tài khoản chính để sử dụng tài khoản thay thế.

  1. Người chơi đăng xuất khỏi IGA hiện tại, nhưng kết nối nền tảng PGS vẫn hoạt động.
  2. Khi người chơi đăng nhập bằng một IGA khác, trò chơi sẽ liên kết tài khoản mới này với Mã nhận dạng người chơi hiện tại trên PGS dưới dạng IGA được chơi gần đây nhất chỉ để khôi phục liền mạch.
Chuyển sang một IGA không liên kết với bất kỳ hồ sơ PGS nào
Chuyển sang một IGA không liên kết với bất kỳ hồ sơ PGS nào (nhấp để phóng to).
Chuyển sang một IGA được liên kết với cùng một hồ sơ PGS đã đăng nhập
Chuyển sang một IGA được liên kết với cùng một hồ sơ PGS đã đăng nhập (nhấp để phóng to).
Chuyển sang một IGA được liên kết với hồ sơ PGS khác
Chuyển sang một IGA được liên kết với hồ sơ PGS khác (nhấp để phóng to).
Chuyển đổi IGA mà không có hồ sơ PGS trên thiết bị
Chuyển đổi IGA mà không có hồ sơ PGS trên thiết bị (nhấp để phóng to).
Chuyển đổi IGA bằng hồ sơ PGS đã đăng xuất
Chuyển đổi IGA bằng hồ sơ PGS đã đăng xuất (nhấp để phóng to).
Chuyển sang IGA không tồn tại
Chuyển sang IGA không tồn tại (nhấp để phóng to).

Khôi phục liền mạch cho người chơi cũ

Trường hợp này áp dụng khi người chơi khởi chạy trò chơi sau một khoảng thời gian không hoạt động, cài đặt lại hoặc trên một thiết bị hoàn toàn mới. Bạn nên triển khai tính năng khôi phục liền mạch cho trò chơi.

  1. Khi khởi chạy, PGS sẽ xác thực người dùng và cung cấp Mã nhận dạng người chơi PGS cho trò chơi.
  2. Trò chơi sẽ kiểm tra phần phụ trợ (hoặc mã gọi lại đã truy xuất nếu dùng API Recall) để xem liệu một IGA đã chơi gần đây có được liên kết với mã nhận dạng PGS này hay không.
  3. Nếu tìm thấy một mối liên kết, trò chơi sẽ tự động khôi phục tiến trình của người chơi và đăng nhập cho họ, bỏ qua hoàn toàn màn hình đăng nhập thủ công.
  4. Nếu không, trò chơi sẽ hiện màn hình đăng nhập cho người chơi
    1. Sau đó, người chơi chọn một phương thức đăng nhập và đăng nhập vào một IGA
    2. Sau đó, trò chơi sẽ liên kết IGA này với mã nhận dạng người chơi trên PGS làm IGA được chơi gần đây nhất để khôi phục liền mạch.
Người chơi cũ có hồ sơ PGS đã đăng xuất
Người chơi cũ có hồ sơ PGS đã đăng xuất (nhấp để phóng to).
Người chơi cũ đã đăng nhập bằng hồ sơ PGS và liên kết với IGA
Người chơi cũ có hồ sơ PGS đã đăng nhập và IGA được liên kết (nhấp để phóng to).
Người chơi cũ có hồ sơ PGS đã đăng nhập và không có IGA được liên kết
Người chơi cũ đã đăng nhập bằng hồ sơ PGS và không có IGA được liên kết (nhấp để phóng to).
Người chơi cũ không có hồ sơ PGS
Người chơi cũ không có hồ sơ PGS (nhấp để phóng to).

Chế độ khách

Người chơi có thể khởi chạy trò chơi và chơi bằng tài khoản khách cục bộ. PGS vẫn xác thực trong nền. Nếu người chơi chọn Lưu tiến trình, trò chơi sẽ chuyển phiên khách thành một IGA vĩnh viễn và liên kết IGA đó với mã nhận dạng người chơi trên PGS.

Chế độ khách – Không có IGA nào được tạo
Chế độ khách – Không tạo IGA (nhấp để phóng to).
Chế độ khách – IGA đã tạo
Chế độ khách – IGA đã tạo (nhấp để phóng to).