gpg::GameServices

#include <game_services.h>

Điểm xuất phát để tương tác với Google Play Games.

Tóm tắt

Vòng đời của dịch vụ trò chơi

Một thực thể của lớp GameServices được tạo thông qua GameServices::Builder. Khi được tạo, thực thể này ban đầu không được đăng nhập vào Dịch vụ trò chơi (nghĩa là IsAuthorized() sẽ trả về false). Hệ thống sẽ bắt đầu đăng nhập ở chế độ nền và có thể thành công nếu người dùng đăng nhập vào cuối phiên trước đó. Cho đến khi hoàn tất nỗ lực đăng nhập thầm lặng này, mọi giao diện người dùng xác thực người dùng (ví dụ: nút đăng nhập và/hoặc đăng xuất) sẽ bị tắt hoặc ẩn đi.

Sau khi hoàn tất nỗ lực đăng nhập thầm lặng này, lệnh gọi lại OnAuthActionFinish cho phiên bản GameServices (đã đăng ký bằng GameServices::Builder::SetOnAuthActionFinished) sẽ được thông báo. Nếu các đối số gọi lại phản ánh một lần đăng nhập thành công, thì phiên bản đó có thể được giả định là đã kết nối với Dịch vụ trò chơi (nghĩa là IsAuthorized() sẽ trả về true) và giao diện người dùng đăng xuất phải được bật. Nếu đối số gọi lại phản ánh một lần đăng nhập không thành công, bạn phải bật giao diện người dùng đăng nhập.

Hoạt động đăng xuất rõ ràng thông qua phương thức SignOut() chỉ được gọi khi người dùng yêu cầu. Thao tác này yêu cầu chuyển sang trạng thái đã đăng xuất. Việc hoàn tất quá trình chuyển đổi này được biểu thị bằng lệnh gọi lại OnAuthActionFinish. Cho đến khi lệnh gọi lại này được gọi, các API GameServices khác (bao gồm cả StartAuthorizationUI()) sẽ không được gọi.

Khi một thực thể GameServices bị huỷ, thực thể đó sẽ chặn cho đến khi không có hoạt động nào đang chờ xử lý để tránh mất dữ liệu. Nếu không mong muốn hành vi chặn khi phá huỷ này, thì hệ thống sẽ phát hành Flush() và duy trì thực thể GameServices cho đến khi Flush() hoàn tất.

Để GameServices hoạt động đúng cách trên phiên bản Android dưới 4.0, Hoạt động sở hữu phải gọi các phương thức gọi lại trong vòng đời. Hãy xem phần AndroidSupport.

Hàm khởi tạo và phá huỷ

GameServices()
~GameServices()

Loại công khai

FlushCallback typedef
std::function< void(FlushStatus)>
Xác định loại lệnh gọi lại nhận kết quả (trạng thái) của thao tác Flush.

Hàm công khai

Achievements()
Cung cấp mục tham chiếu đến đối tượng AchievementManager dùng để truy cập và thao tác với thành tích.
Achievements() const
Cung cấp tệp tham chiếu cố định đến đối tượng AchievementManager dùng để truy cập và điều chỉnh thành tích.
Events()
Cung cấp thông tin tham chiếu đến đối tượng EventManager dùng để truy cập và thao tác với các sự kiện.
Events() const
const EventManager &
Cung cấp tham chiếu const đến đối tượng EventManager dùng để truy cập và thao tác với các sự kiện.
Flush(FlushCallback callback)
void
Xoá không đồng bộ hàng đợi điều phối chính và trả về trạng thái xả cho FlushCallback đã cung cấp.
FlushBlocking()
Xả đồng bộ và nhận được (trạng thái) của xả.
FlushBlocking(Timeout timeout)
Xả đồng bộ và nhận được (trạng thái) của xả.
IsAuthorized()
bool
Cho phép bạn kiểm tra rõ ràng trạng thái cấp phép hiện tại.
Leaderboards()
Cung cấp thông tin tham chiếu đến đối tượng LeaderboardManager dùng để truy cập và điều chỉnh thành tích.
Leaderboards() const
Cung cấp một tệp tham chiếu cố định đến đối tượng LeaderboardManager dùng để truy cập và điều chỉnh thành tích.
Players()
Cung cấp tệp tham chiếu đến đối tượng PlayerManager, cho phép truy cập vào thông tin về người chơi.
Players() const
const PlayerManager &
Cung cấp tham chiếu const đến đối tượng PlayerManager, cho phép truy cập vào thông tin về người chơi.
RealTimeMultiplayer()
Cung cấp tệp tham chiếu đến đối tượng RealTimeMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến RTMP.
RealTimeMultiplayer() const
Cung cấp tệp tham chiếu cố định đến đối tượng RealTimeMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến RTMP.
SignOut()
void
Bắt đầu quá trình đăng xuất không đồng bộ.
Snapshots()
Cung cấp thông tin tham chiếu đến đối tượng SnapshotManager dùng để truy cập và thao tác với bản tổng quan nhanh.
Snapshots() const
const SnapshotManager &
Cung cấp tham chiếu cố định đến đối tượng SnapshotManager dùng để truy cập và thao tác với bản tổng quan nhanh.
StartAuthorizationUI()
void
Xuất hiện quy trình uỷ quyền người dùng theo từng nền tảng.
Stats()
Cung cấp thông tin tham chiếu đến đối tượng StatsManager dùng để truy cập vào số liệu thống kê về trò chơi và người chơi.
Stats() const
const StatsManager &
Cung cấp tệp tham chiếu cố định đến đối tượng StatsManager dùng để truy cập vào số liệu thống kê về trò chơi và người chơi.
TurnBasedMultiplayer()
Cung cấp tệp tham chiếu đến đối tượng TurnBasedMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến TBMP.
TurnBasedMultiplayer() const
Cung cấp một tệp tham chiếu cố định đến đối tượng TurnBasedMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến TBMP.
Video()
Cung cấp tệp tham chiếu đến đối tượng VideoManager, cho phép truy cập vào các phương thức liên quan đến video.
Video() const
const VideoManager &
Cung cấp tham chiếu const đến đối tượng VideoManager, cho phép truy cập vào các phương thức liên quan đến video.

Lớp

gpg::GameServices::Builder

Dùng để tạo và định cấu hình một bản sao của lớp GameServices.

Loại công khai

FlushCallback

std::function< void(FlushStatus)> FlushCallback

Xác định loại lệnh gọi lại nhận kết quả (trạng thái) của thao tác Flush.

Dùng trong Flush().

Hàm công khai

Thành tích

AchievementManager & Achievements()

Cung cấp mục tham chiếu đến đối tượng AchievementManager dùng để truy cập và thao tác với thành tích.

Thành tích

const AchievementManager & Achievements() const 

Cung cấp tệp tham chiếu cố định đến đối tượng AchievementManager dùng để truy cập và điều chỉnh thành tích.

Sự kiện

EventManager & Events()

Cung cấp thông tin tham chiếu đến đối tượng EventManager dùng để truy cập và thao tác với các sự kiện.

Sự kiện

const EventManager & Events() const 

Cung cấp tham chiếu const đến đối tượng EventManager dùng để truy cập và thao tác với các sự kiện.

Xả

void Flush(
  FlushCallback callback
)

Xoá không đồng bộ hàng đợi điều phối chính và trả về trạng thái xả cho FlushCallback đã cung cấp.

Trạng thái có thể có là: FLUSHED, ERROR_INTERNAL và ERROR_VERSION_UPDATE_REQUIRED.

FlushBlocking

FlushStatus FlushBlocking()

Xả đồng bộ và nhận được (trạng thái) của xả.

Trạng thái có thể là: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED và ERROR_TIMEOUT. Việc không chỉ định thời gian chờ này sẽ khiến lệnh gọi hàm này tương đương với việc gọi FlushStatus FlushBlocking(Timeout), với Thời gian chờ được chỉ định là 10 năm.

FlushBlocking

FlushStatus FlushBlocking(
  Timeout timeout
)

Xả đồng bộ và nhận được (trạng thái) của xả.

Trạng thái có thể là: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED và ERROR_TIMEOUT. Chỉ định thời gian chờ dưới dạng một số mili giây tuỳ ý.

GameServices

 GameServices()=delete

IsAuthorized

bool IsAuthorized()

Cho phép bạn kiểm tra rõ ràng trạng thái cấp phép hiện tại.

Người sử dụng SDK nên đăng ký lệnh gọi lại XÁC_ACTION_* để xử lý các thay đổi về trạng thái uỷ quyền, thay vì thăm dò ý kiến.

Bảng xếp hạng

LeaderboardManager & Leaderboards()

Cung cấp thông tin tham chiếu đến đối tượng LeaderboardManager dùng để truy cập và điều chỉnh thành tích.

Bảng xếp hạng

const LeaderboardManager & Leaderboards() const 

Cung cấp một tệp tham chiếu cố định đến đối tượng LeaderboardManager dùng để truy cập và điều chỉnh thành tích.

Người chơi

PlayerManager & Players()

Cung cấp tệp tham chiếu đến đối tượng PlayerManager, cho phép truy cập vào thông tin về người chơi.

Người chơi

const PlayerManager & Players() const 

Cung cấp tham chiếu const đến đối tượng PlayerManager, cho phép truy cập vào thông tin về người chơi.

RealTimeMultiplayer

RealTimeMultiplayerManager & RealTimeMultiplayer()

Cung cấp thông tin tham chiếu đến đối tượng RealTimeMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến RTMP.

RealTimeMultiplayer

const RealTimeMultiplayerManager & RealTimeMultiplayer() const 

Cung cấp tệp tham chiếu cố định đến đối tượng RealTimeMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến RTMP.

SignOut

void SignOut()

Bắt đầu quá trình đăng xuất không đồng bộ.

Sau khi gọi signOut, bạn không nên gọi bất kỳ thao tác nào trên GameServices cho đến khi nhận được OnAuthActionFinishCallback cho biết đã đăng xuất thành công.

Tổng quan nhanh

SnapshotManager & Snapshots()

Cung cấp thông tin tham chiếu đến đối tượng SnapshotManager dùng để truy cập và thao tác với bản tổng quan nhanh.

Tổng quan nhanh

const SnapshotManager & Snapshots() const 

Cung cấp tham chiếu cố định đến đối tượng SnapshotManager dùng để truy cập và thao tác với bản tổng quan nhanh.

StartAuthorizationUI

void StartAuthorizationUI()

Xuất hiện quy trình uỷ quyền người dùng theo từng nền tảng.

Số liệu thống kê

StatsManager & Stats()

Cung cấp thông tin tham chiếu đến đối tượng StatsManager dùng để truy cập vào số liệu thống kê về trò chơi và người chơi.

Số liệu thống kê

const StatsManager & Stats() const 

Cung cấp tham chiếu cố định đến đối tượng StatsManager dùng để truy cập vào số liệu thống kê về trò chơi và người chơi.

TurnBasedMultiplayer

TurnBasedMultiplayerManager & TurnBasedMultiplayer()

Cung cấp tệp tham chiếu đến đối tượng TurnBasedMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến TBMP.

TurnBasedMultiplayer

const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const 

Cung cấp một tệp tham chiếu cố định đến đối tượng TurnBasedMultiplayerManager, cho phép truy cập vào các phương thức liên quan đến TBMP.

Video

VideoManager & Video()

Cung cấp tệp tham chiếu đến đối tượng VideoManager, cho phép truy cập vào các phương thức liên quan đến video.

Video

const VideoManager & Video() const 

Cung cấp tham chiếu const đến đối tượng VideoManager, cho phép truy cập vào các phương thức liên quan đến video.

~GameServices

 ~GameServices()