在线子系统类型

在线子系统中定义的主要类型的描述

Windows
MacOS
Linux

此文档用于定义在线子系统中使用的各种数据结构。

IOnlinePlatformData

IOnlinePlatformData 是任意不透明类容的基类,以便数据能四处传递,而不考虑其所包含的数据。 通过 ToString() 函数可获取到数据的可读版本;否则,除平台代码应没有内容尝试在数据上直接进行操作。

诸多结构体通常有平台特定的表达,而它们需要被游戏处理,不需要被公开细节。这需要游戏抓牢数据,并将其复制到其他机器(而无需理解其详情)。

派生自IOnlinePlatformData的类:

函数

/** 
 * 获取此不透明数据的原始字节表达
 * 此数据拥有平台依赖性,不应被直接操纵
 * @返回大小GetSize()字节数据
 */
virtual const uint8* GetBytes() const = 0;

/** 
 * 获取不透明数据的大小
 * @返回数据表达的大小(按字节计)
 */
virtual int32 GetSize() const = 0;

/** 
 * 检查不透明数据的有效性
 * @如这是完整的数据,则返回true;否则返回false
 */
virtual bool IsValid() const = 0;

/** 
 * 获取不透明数据的可读表达
 * 不应用于日志记录/调试之外的其他操作
 * @以字符串形式返回数据 
 */
virtual FString ToString() const = 0;

FUniqueNetId

FUniqueNetId 包含一个档案服务在线ID,可代表单个玩家、好友或会话。

FSharedContentHandle

FSharedContentHandle 包含一个档案服务共享文件柄。此柄可四处传递,用于访问来自任意处的共享内容,给出正确的许可。

FSessionInfo

FSessionInfo 包含会话的平台特定消息。在多数情况下,这是会话辨识符、主机地址之类的信息,或识别和连接到已创建会话的其他方式。

参见:会话接口

FEmsFile

FEmsFile 是关于一个给定可下载文件的元数据。从给定服务列举出可用数据时将使用此结构。

包含以下元素:

  • 散列——给定文件内容的散列值。

  • 文件名——下载时的文件名。

  • 逻辑命名——映射到下载文件名的命名。

  • 文件大小——文件的大小。

FTitleFile

FTitleFile 是内部结构,保存用于从在线服务异步下载文件的数据。

包含以下元素:

  • 文件名——下载时的文件名。

  • 异步状态——下载文件的状态。(参见:异步状态

  • 数据——包含文件内容的缓冲。

EOnlineAsyncTaskState

EOnlineAsyncTaskState 是一个简单列举,代表异步操作可能的状态。

    /** 任务尚未开始 */
    NotStarted,
    /** 任务当前当前正在处理 */
    InProgress,
    /** 任务已成功完成 */
    Done,
    /** 任务未能完成 */
    Failed
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback