gpg::AchievementManager

#include <achievement_manager.h>

获取和设置各种与成就相关的数据。

摘要

公共类型

FetchAllCallback typedef
std::function< void(const FetchAllResponse &)>
定义用于接收 FetchAllResponse 的回调类型。
FetchCallback typedef
std::function< void(const FetchResponse &)>
定义用于接收 FetchResponse 的回调类型。
ShowAllUICallback typedef
std::function< void(const UIStatus &)>
定义用于接收 UIStatus 的回调类型。

公共函数

Fetch(const std::string & achievement_id, FetchCallback callback)
void
异步加载当前已登录玩家的特定成就的数据。
Fetch(DataSource data_source, const std::string & achievement_id, FetchCallback callback)
void
异步加载当前已登录玩家的特定成就的数据。
FetchAll(FetchAllCallback callback)
void
异步加载当前已登录玩家的所有成就数据。
FetchAll(DataSource data_source, FetchAllCallback callback)
void
异步加载当前已登录玩家的所有成就数据。
FetchAllBlocking()
同步加载当前已登录玩家的所有成就数据,并直接返回 FetchAllResponse
FetchAllBlocking(DataSource data_source)
同步加载当前已登录玩家的所有成就数据,并直接返回 FetchAllResponse
FetchAllBlocking(Timeout timeout)
同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchAllBlocking(DataSource data_source, Timeout timeout)
同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse
FetchBlocking(const std::string & achievement_id)
为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse
FetchBlocking(DataSource data_source, const std::string & achievement_id)
为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse
FetchBlocking(Timeout timeout, const std::string & achievement_id)
为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse
FetchBlocking(DataSource data_source, Timeout timeout, const std::string & achievement_id)
为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse
Increment(const std::string & achievement_id)
void
将成就的步数递增指定步数。
Increment(const std::string & achievement_id, uint32_t steps)
void
将成就的步数递增指定步数。
Reveal(const std::string & achievement_id)
void
向当前已登录的玩家显示隐藏的成就。
SetStepsAtLeast(const std::string & achievement_id, uint32_t steps)
void
设置成至少完成指定步骤数即可获得成就。
ShowAllUI(ShowAllUICallback callback)
void
向用户显示一个界面,用于显示所有成就的相关信息。
ShowAllUI()
void
已废弃。 请优先使用 ShowAllUI(ShowAllUICallback callback)。向用户显示一个界面,用于显示所有成就的相关信息。界面会在所有平台上异步显示。
ShowAllUIBlocking()
向用户显示一个界面,用于显示所有成就的相关信息。
ShowAllUIBlocking(Timeout timeout)
向用户显示一个界面,用于显示所有成就的相关信息。
Unlock(const std::string & achievement_id)
void
为当前已登录的玩家解锁成就。

结构体

gpg::AchievementManager::FetchAllResponse

包含所有成就的所有数据以及响应状态。

gpg::AchievementManager::FetchResponse

包含单个成就的数据和响应状态。

公共类型

FetchAllCallback

std::function< void(const FetchAllResponse &)> FetchAllCallback

定义用于接收 FetchAllResponse 的回调类型。

此回调类型会提供给以下 FetchAll(*) 函数。

FetchCallback

std::function< void(const FetchResponse &)> FetchCallback

定义用于接收 FetchResponse 的回调类型。

此回调类型会提供给以下 Fetch(*) 函数。

ShowAllUICallback

std::function< void(const UIStatus &)> ShowAllUICallback

定义用于接收 UIStatus 的回调类型。

此回调类型会提供给下面的 ShowAllUI* 函数。

公共函数

提取

void Fetch(
  const std::string & achievement_id,
  FetchCallback callback
)

异步加载当前已登录玩家的特定成就的数据。

在操作完成后调用所提供的 FetchCallback。如果不指定 data_source,此函数调用等同于调用 Fetch(DataSource data_source, const std::string& id, FetchCallback),其中 data_source 指定为 CACHE_OR_NETWORK

提取

void Fetch(
  DataSource data_source,
  const std::string & achievement_id,
  FetchCallback callback
)

异步加载当前已登录玩家的特定成就的数据。

在操作完成时调用所提供的 FetchCallback。将 data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY

FetchAll

void FetchAll(
  FetchAllCallback callback
)

异步加载当前已登录玩家的所有成就数据。

在操作完成后调用所提供的 FetchAllCallback。如果不指定 data_source,此函数调用等同于调用 FetchAll(DataSource data_source, FetchAllCallback),并将 data_source 指定为 CACHE_OR_NETWORK

FetchAll

void FetchAll(
  DataSource data_source,
  FetchAllCallback callback
)

异步加载当前已登录玩家的所有成就数据。

在操作完成后调用所提供的 FetchAllCallback。将 data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY

FetchAllBlocking

FetchAllResponse FetchAllBlocking()

同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse

如果不指定 data_sourcetimeout,此函数调用等同于调用 FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 指定为 10 年。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source
)

同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。如果不指定 timeout,此函数调用就等同于使用您指定的 data_source 值调用 FetchAllBlocking FetchAllResponse(DataSource data_source, Timeout timeout),并将 timeout 指定为 10 年。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  Timeout timeout
)

同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse

timeout 指定为任意毫秒数。如果不指定 data_source,此函数调用等同于调用 FetchAllResponse FetchAllBlocking(DataSource data_source, Timeout timeout),其中 data_source 指定为 CACHE_OR_NETWORK,并且 timeout 包含您指定的值。

FetchAllBlocking

FetchAllResponse FetchAllBlocking(
  DataSource data_source,
  Timeout timeout
)

同步加载当前已登录玩家的所有成就数据,直接返回 FetchAllResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。将超时指定为任意毫秒数。

FetchBlocking

FetchResponse FetchBlocking(
  const std::string & achievement_id
)

为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse

如果不指定 data_sourcetimeout,此函数调用就等同于调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id),其中 data_source 指定为 CACHE_OR_NETWORKtimeout 指定为 10 年。

FetchBlocking

FetchResponse FetchBlocking(
  DataSource data_source,
  const std::string & achievement_id
)

为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。如果不指定 timeout,此函数调用就等同于使用指定的 data_source 值调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id),并将 timeout 指定为 10 年。

FetchBlocking

FetchResponse FetchBlocking(
  Timeout timeout,
  const std::string & achievement_id
)

为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse

timeout 指定为任意毫秒数。如果未指定 data_source,此函数调用将等同于调用 FetchResponse FetchBlocking(DataSource data_source, Timeout timeout, const std::string& id),其中 data_source 指定为 CACHE_OR_NETWORK,并且 timeout 包含您指定的值。

FetchBlocking

FetchResponse FetchBlocking(
  DataSource data_source,
  Timeout timeout,
  const std::string & achievement_id
)

为当前已登录的玩家同步加载特定成就(通过字符串 ID 标识)的数据;直接返回 FetchResponse

data_source 指定为 CACHE_OR_NETWORKNETWORK_ONLY。将 timeout 指定为任意毫秒数。

增加

void Increment(
  const std::string & achievement_id
)

将成就的步数递增指定步数。

如果未指定增量,则其值默认为 1。成就必须是分步成就。当成就达到步骤数上限后,系统会自动为其解锁。系统会忽略任何进一步的增量。

增加

void Increment(
  const std::string & achievement_id,
  uint32_t steps
)

将成就的步数递增指定步数。

成就必须是分步成就。当成就的步骤数至少达到上限后,系统会自动解锁该成就。系统会忽略任何进一步的增量。

显示

void Reveal(
  const std::string & achievement_id
)

向当前已登录的玩家显示隐藏的成就。

如果成就已解锁,则此操作不会产生任何影响。

SetStepsAtLeast

void SetStepsAtLeast(
  const std::string & achievement_id,
  uint32_t steps
)

设置成至少完成指定步骤数即可获得成就。

如果成就的步骤数已超过所提供的值,调用此方法将不会执行任何操作。当成就达到最大步骤数后,系统会自动解锁该成就,并忽略任何进一步的更改操作。

ShowAllUI

void ShowAllUI(
  ShowAllUICallback callback
)

向用户显示一个界面,用于显示有关所有成就的信息。

它会异步调用 ShowAllUICallback

ShowAllUI

void ShowAllUI()

已废弃。 请优先使用 ShowAllUI(ShowAllUICallback callback)。向用户显示一个界面,用于显示所有成就的相关信息。界面会在所有平台上异步显示。

ShowAllUIBlocking

UIStatus ShowAllUIBlocking()

向用户显示一个界面,用于显示所有成就的相关信息。

它会同步返回 UIStatus。如果不指定 timeout,此函数调用就等同于将 timeout 指定为 10 年,然后调用 ShowAllUIBlocking(Timeout timeout)

ShowAllUIBlocking

UIStatus ShowAllUIBlocking(
  Timeout timeout
)

向用户显示一个界面,用于显示所有成就的相关信息。

它会同步返回 UIStatus。将 timeout 指定为任意毫秒数。

解锁

void Unlock(
  const std::string & achievement_id
)

为当前已登录的玩家解锁成就。

如果成就处于隐藏状态,SDK 也会显示该成就。