ISteamUGC::StartPlaytimeTracking:开始跟踪项目使用时间
StartPlaytimeTracking 用于在工坊内容实际参与游戏时,开始记录一组项目的使用时间。本页面向 Steamworks 游戏和工具开发者,说明接口声明、参数、返回方式以及与工坊内容生命周期相关的注意事项。
函数声明
客户端通过初始化成功后的 SteamUGC() 接口访问;游戏服务器使用服务器上下文的 SteamGameServerUGC()。以下声明按本次核对的官方接口整理,编译时应以项目实际使用的 SDK 头文件为准。
SteamAPICall_t StartPlaytimeTracking( PublishedFileId_t *pvecPublishedFileID, uint32 unNumPublishedFileIDs );
参数
| 参数 | 类型 | 方向与含义 |
|---|---|---|
pvecPublishedFileID |
PublishedFileId_t * |
输入:包含要跟踪的项目 ID 的数组。 |
unNumPublishedFileIDs |
uint32 |
输入:ID 数组中的元素数量。 |
返回值与完成方式
返回 SteamAPICall_t;通过 StartPlaytimeTrackingResult_t 检查 m_eResult。空数组指针或数量小于 1、大于 100 时返回 k_uAPICallInvalid。
调用结果由 Steam 异步交付。应在对象有效期间保存对应的结果处理器,并持续运行 Steam 回调;还要区分传输失败与结果结构中的操作失败。
调用规则与排查
传入需要跟踪的项目 ID 数组,每次为 1 至 100 个,数组数量要与传参一致。项目不再使用时通过 StopPlaytimeTracking 停止;应用关闭时也会自动停止。把跟踪时机绑定到实际加载状态,有助于统计具有可解释性。
使用场景
例如,玩家进入同时使用多张工坊资源的游戏会话时,应用可收集实际启用的项目 ID 并开始跟踪。内容退出使用后再停止对应项目的跟踪;若项目数量超过单次限制,需要由应用分批组织调用和结果处理。只统计已订阅但未使用的项目会降低数据的参考价值。
相关接口
StopPlaytimeTracking、StopPlaytimeTrackingForAllItems。回调、状态与类型参考整理了相关结构体和枚举,适合在处理结果时对照使用。
站内字段参考
StartPlaytimeTrackingResult_t。
资料依据:Steamworks ISteamUGC:StartPlaytimeTracking。资料核对日期:2026 年 11 月 4 日。