本页介绍了如何配置 Android Performance Tuner 以便在 Unity 中加入 Addressables 场景。
Addressables 让开发者可以在运行时动态加载内容。 这可能包括构建 .apk 时 Unity 构建设置中不存在的场景。在 Android Performance Tuner 1.5.1 推出之前,Android Performance Tuner 无法识别这类场景,而在 Play 管理中心内系统也无法检查这类场景。
要求
如要支持 Addressables 场景,需满足以下要求:
- Android Performance Tuner 1.5.1 或更高版本
- Unity 2019.3 或更高版本
- Addressables 软件包 1.19.4 或更高版本
添加 Addressables 场景
若要让 Android Performance Tuner 能识别 Addressables 场景,请执行以下操作:
当您准备好测试应用时,请前往 Window > Android Performance Tuner > Setup,打开 Addressables Settings 标签页。
图 1. “Addressables Settings”窗口。
点击 Update Addressables Scenes 按钮。
默认情况下,AddressableAssetSettingsDefaultObject
中包含的所有场景都会包含在 Android Performance Tuner 中。现在,该窗口会显示找到的所有场景及对应的值(保存在 proto 文件中)。
图 2. Android Performance Tuner 列出的 Addressables 场景。
若要更改从中提取场景的 Addressables 设置对象,请执行以下操作:
进入 Assets/AndroidPerformanceTuner_gen/Runtime/Resources 文件夹,然后在“Inspector”中打开 SetupConfig 可脚本化对象。
在 Addressables Settings Object Path 字段中插入自定义设置对象的路径,包括文件名。
建议您在场景布局完成一半时更新 Addressables 场景,以免出现向后兼容性问题。
Android Performance Tuner 仅会收集已上传到 Play 管理中心的 .apk 文件中所存在场景的数据。
重置 Addressables 场景
您可以通过点击 Addressables Settings 标签页中的 Reset Addressables Scenes 来重置 Addressables 场景。但是,这样做会破坏与当前已发布应用版本的兼容性。
如果动态更新应用中的 SetupConfig
对象,而不发布新版本,则会导致 Play 管理中心内出错,因为系统不会保留场景与值之间的关联。
在注解中设置 Addressables 场景
如果您使用的是默认注解,Android Performance Tuner 会自动设置正确的场景。如果您使用的是自定义注解,请调用 ConvertAddressableScenePathToAPTSceneIndex()
:
tuner.SetCurrentAnnotation(new Annotation
{
Scene = (Scene) tuner.ConvertAddressableScenePathToAPTSceneIndex(scenePath),
Difficulty = Difficulty.Medium
});