迁移到版本 3.0.0
将您的应用从 com.yandex.android:mobmetricapushlib 迁移到 io.appmetrica.analytics:push 不应出现任何问题。
同时使用两个版本的AppMetrica Push SDK
由于我们重命名了组和主要组件,可能会出现应用程序同时使用两个版本的 AppMetrica SDK 的情况:com.yandex.android:mobmetricapushlib 和 io.appmetrica.analytics:push.
注意
这可能会导致报告出现异常,不建议这样做。
迁移指南
本指南包含示例,展示 SDK 版本 2.3.3 和 3.0.0 之间的差异。
该部分仅涵盖不具备向后兼容性的方法。
这是迁移到新版本的方法
- 确保您使用的是 AppMetrica SDK 版本
io.appmetrica.analytics:analytics:6.0.0或更高版本。 - 将
com.yandex.android:mobmetricapushlib:2.3.3依赖项更改为io.appmetrica.analytics:push:3.0.0. - 在项目代码中,替换那些仅被重命名或只改变了包的类和方法。 你需要做的修改列在重命名类的段落中。
- 临时注释掉仍存在错误的代码,以确保项目能够成功构建。
- 修改任何已存在的
排除规则。 你需要做的修改列在重命名依赖项的段落中。 - 根据本指南的其他段落,编辑您已注释的代码。 如果您有任何问题,请联系支持团队。
重命名依赖项
- 将模块
com.yandex.android:mobmetricapushlib的名称更改为io.appmetrica.analytics:push. - 将模块
com.yandex.android:appmetricapush-provider-firebase的名称更改为io.appmetrica.analytics:push-provider-firebase. - 将模块
com.yandex.android:appmetricapush-provider-hms的名称更改为io.appmetrica.analytics:push-provider-hms. - 将模块
com.yandex.android:appmetricapush-provider-rustore的名称更改为io.appmetrica.analytics:push-provider-rustore. - 将
com.yandex.android:appmetricapush-core模块拆分为io.appmetrica.analytics:push-core-utils和io.appmetrica.analytics:push-provider-api.
重命名的类
- 将类
com.yandex.metrica.push.TokenUpdateListener重命名为io.appmetrica.analytics.push.TokenUpdateListener. - 将类
com.yandex.metrica.push.YandexMetricaPush重命名为io.appmetrica.analytics.push.AppMetricaPush.- 已更改
EXTRA_ACTION_INFO常量。 - 已删除
getToken方法。 - 将
init方法的名称更改为activate.
- 已更改
- 将类
com.yandex.appmetrica.push.firebase.FirebasePushServiceControllerProvider重命名为io.appmetrica.analytics.push.provider.firebase.FirebasePushServiceControllerProvider. - 将类
com.yandex.appmetrica.push.hms.HmsPushServiceControllerProvider重命名为io.appmetrica.analytics.push.provider.hms.HmsPushServiceControllerProvider. - 将类
com.yandex.appmetrica.push.hms.MetricaHmsMessagingService重命名为io.appmetrica.analytics.push.provider.hms.AppMetricaHmsMessagingService. - 将类
com.yandex.appmetrica.push.rustore.MetricaRuStoreMessagingService重命名为io.appmetrica.analytics.push.provider.rustore.AppMetricaRuStoreMessagingService. - 将类
com.yandex.appmetrica.push.rustore.RuStorePushServiceControllerProvider重命名为io.appmetrica.analytics.push.provider.rustore.RuStorePushServiceControllerProvider. - 将类
com.yandex.metrica.push.common.core.PushServiceControllerProvider重命名为io.appmetrica.analytics.push.provider.api.PushServiceControllerProvider. - 将类
com.yandex.metrica.push.common.core.PushServiceController重命名为io.appmetrica.analytics.push.provider.api.PushServiceController. - 将类
com.yandex.metrica.push.firebase.MetricaMessagingService重命名为io.appmetrica.analytics.push.provider.firebase.AppMetricaMessagingService.
类 io.appmetrica.analytics.push.provider.firebase.AppMetricaMessagingService 已移至单独的 依赖项。
Other
- 将默认通知通道的名称更改为
appmetrica_push. 旧的默认通道不会被删除。
如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。