迁移到版本 2.0.0
同时运行两个版本的AppMetrica Push SDK
在一个应用中可以同时运行两个版本的AppMetrica Push SDK。
注意
我们不建议在同一个应用中使用多个AppMetrica Push SDK 版本,因为这可能会导致报告出现异常。 换句话说,在使用旧版本的AppMetricaPush预制体时,不应该激活AppMetricaPush. 虽然这不会导致应用程序崩溃或失败,但会扭曲和破坏统计数据。 在迁移到新插件版本时,请确保不存在 Assets/AppMetricaPush 目录。 新的插件版本通过 UPM 提供,并保存到 Library/PackageCache/io.appmetrica.analytics.push@hash。
迁移指南
本指南包含示例,展示插件版本 1.1.0 和 2.0.0 之间的差异。 该部分仅涵盖不具备向后兼容性的方法。
要迁移到新版本,请执行以下步骤:
- 删除之前的插件版本。
- 使用 UPM 添加新插件版本。 要了解更多信息,请查看启用插件的部分。
- 将预制体替换为通过 RuntimeInitializeOnLoadMethodAttribute 进行激活。 要了解更多信息,请查看替换预制体的部分。
- 在项目代码中,替换已重命名或仅更改包的类和方法。 要了解更多信息,请查看重命名部分。
启用 AppMetrica Push Unity 插件 2.0.0
插件通过Unity Package Manager启用。
将以下依赖项添加到 Packages/manifest.json:
{
"dependencies": {
"io.appmetrica.analytics.push": "https://github.com/appmetrica/push-unity-plugin.git#v2.0.0"
}
}
替换预制件
-
创建一个静态方法,添加
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]属性,然后使用AppMetricaPush.Activate()方法激活 AppMetricaPush。示例:
using Io.AppMetrica; using Io.AppMetrica.Push; using UnityEngine; public static class AppMetricaActivator { [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)] private static void Activate() { AppMetrica.Activate(new AppMetricaConfig("APIKey")); AppMetricaPush.Activate(); } }备注
必须在调用
AppMetricaPush.Activate()之前严格调用AppMetrica.Activate(). -
从你的场景中移除
AppMetricaPush预制体。
重命名 API
备注
要使用 AppMetricaPush,请使用 AppMetricaPush 类中的静态方法。 为了做这一步,请将 AppMetricaPush.Instance 替换为 AppMetricaPush,并导入 Io.AppMetricaPush.
- 删除了
IYandexAppMetricaPush接口,并将其方法转移到AppMetricaPush类。- 将
Initialize方法重命名为Activate.
- 将