Google.Android.PerformanceTuner.AndroidPerformanceTuner< TFidelity, TAnnotation >

需要实例化的主类,用于设置和运行 Android Performance Tuner。

摘要

详细信息
模板参数
TFidelity
插件生成的 FidelityParams 消息类。
TAnnotation
插件生成的注释消息类。

公共属性

onReceiveFidelityParameters
Action< TFidelity >
每次设置新的保真度参数时调用的操作。
onReceiveUploadLog
Action< UploadTelemetryRequest >
每次上传日志时调用的操作。

公共函数

EnableLocalEndpoint()
启用本地端点。
FindFidelityParametersInApk(string filename)
Result< TFidelity >
从 APK“assets/tuningfork/”文件夹中加载保真度参数。
Flush()
强制上传当前直方图。
FrameTick(InstrumentationKeys key)
记录将与插桩键和当前注释关联的帧 tick。
GetFidelityParameters(TFidelity defaultFidelity, uint initialTimeoutMs)
Result< TFidelity >
用于从服务器获取保真度参数的阻塞调用。
SetCurrentAnnotation(TAnnotation annotation)
设置当前注释。
SetFidelityParameters(TFidelity fidelityParams)
设置当前活动的保真度参数。
SetLoadingState(MessageUtil.LoadingState state)
设置加载状态。
Start()
启动 AndroidPerformanceTuner。
Stop()
停止 Android Performance Tuner。
SwappyIsEnabled()
bool
返回 Swappy 启用还是未启用的信息。

公共属性

onReceiveFidelityParameters

Action< TFidelity > onReceiveFidelityParameters

每次设置新的保真度参数时调用的操作。

onReceiveUploadLog

Action< UploadTelemetryRequest > onReceiveUploadLog

每次上传日志时调用的操作。

公共函数

EnableLocalEndpoint

ErrorCode EnableLocalEndpoint()

启用本地端点。

仅适用于调试 build。请参阅 README 或集成指南,详细了解如何启用本地端点。

详细信息
返回值
ErrorCode.InvalidMode(如果在非调试 build 中使用)。

FindFidelityParametersInApk

Result< TFidelity > FindFidelityParametersInApk(
  string filename
)

从 APK“assets/tuningfork/”文件夹中加载保真度参数。

详细信息
参数
filename
文件名
返回值
保真度参数(如果成功加载)。

清空

ErrorCode Flush()

强制上传当前直方图。

详细信息
返回值
ErrorCode.Ok(如果可发起上传操作)。
ErrorCode.PreviousUploadPending(如果存在之前的上传阻止本次上传)。
ErrorCode.UploadTooFrequent(如果距离上次上传的时间尚未超过一分钟)。

FrameTick

ErrorCode FrameTick(
  InstrumentationKeys key
)

记录将与插桩键和当前注释关联的帧 tick。

在高级模式和默认模式下,系统会自动调用 FrameTick。

详细信息
参数
key
插桩键。
返回值
ErrorCode.InvalidInstrumentKey(如果插桩键无效)。ErrorCode.Ok(如果成功)。

GetFidelityParameters

Result< TFidelity > GetFidelityParameters(
  TFidelity defaultFidelity,
  uint initialTimeoutMs
)

用于从服务器获取保真度参数的阻塞调用。

如果您向 TuningFork_init 传递 fidelity_params_callback 作为设置的一部分,则无需进行此调用。请注意,下载保真度参数后,任何计时信息都将记录为与这些参数相关联。如果您随后调用 GetFidelityParameters,并且下载了一组新参数,已经收集的所有数据都将提交到后端。参数请求将发送至:url_base + 'applications/' + package_name + '/apks/' + version_number + ':generateTuningParameters'

详细信息
参数
defaultFidelity
如果所有参数都无法下载,假设这些参数为当前对象
initialTimeoutMs
如果无法连接,从该调用返回之前所需等待的时间
返回值
ErrorCode.Timeout(如果在下载参数之前出现超时)。ErrorCode.Ok(如果成功)。

SetCurrentAnnotation

ErrorCode SetCurrentAnnotation(
  TAnnotation annotation
)

设置当前注释。

仅用于自定义注释。

详细信息
参数
annotation
当前注释。
返回值
ErrorCode.TuningforkNotInitialized(如果插件未初始化)。ErrorCode.InvalidMode(如果在默认注释模式下使用)。ErrorCode.InvalidAnnotation(如果注释与设置不一致或设置了无效的值)。ErrorCode.Ok(如果成功)。

SetFidelityParameters

ErrorCode SetFidelityParameters(
  TFidelity fidelityParams
)

设置当前活动的保真度参数。

如果处于实验模式,此函数会覆盖已下载的所有参数。例如,如果玩家手动更改了游戏画质设置,请使用此方法。这将清空(即上传)与之前的任何参数相关联的数据。

详细信息
参数
fidelityParams
新保真度参数
返回值
ErrorCode.Ok(如果可以设置参数)。ErrorCode.InvalidFidelity(如果消息的值无效)。ErrorCode.TuningforkNotInitialized(如果插件未初始化)。ErrorCode.InvalidMode(如果在默认保真度模式下使用)。

SetLoadingState

ErrorCode SetLoadingState(
  MessageUtil.LoadingState state
)

设置加载状态。

仅用于默认注释。开始加载时设置 MessageUtil.LoadingState.Loading。
重要提示

  • 加载完成后请不要忘记设置 MessageUtil.LoadingState.NotLoading。
  • 加载期间不会记录帧信息。

详细信息
参数
state
加载状态
返回值
ErrorCode.TuningforkNotInitialized(如果插件未初始化)。ErrorCode.InvalidMode(如果在自定义注释模式下使用)。ErrorCode.Ok(如果成功)。

开始

ErrorCode Start()

启动 AndroidPerformanceTuner。

详细信息
返回值
Android Performance Tuner 库返回的代码。

停止

ErrorCode Stop()

停止 Android Performance Tuner。

详细信息
返回值
Android Performance Tuner 库返回的代码。

SwappyIsEnabled

bool SwappyIsEnabled()

返回 Swappy 启用还是未启用的信息。

如需在编辑器中启用 Swappy,请依次打开 Project Settings -> Player -> Resolution and Presentation,然后启用 Optimized Frame Pacing。建议开启 Swappy,以便获得更高的帧速率。

详细信息
返回值
True(如果 Swappy 已启用)