从 C2DM 迁移到 GCM for Android SDK 19

Posted

技术标签:

【中文标题】从 C2DM 迁移到 GCM for Android SDK 19【英文标题】:Migrate from C2DM to GCM for Android SDK 19 【发布时间】:2016-11-26 15:26:12 【问题描述】:

我有一个适用于 android SDK 19 的应用程序,它是为使用 C2DM 而编写的。我需要将它迁移到 GCM。我面临下一个问题:

    实际上没有 /extras/google/google_play_services/libproject/google-play-services_lib/ 文件夹。据我从here 了解到,它已被 Google Repository 库取代并分成不同的部分 GCM 位于过时的库中Google Cloud Messaging 我有一些 google-play-services_lib(从某处下载 android:versionCode="3265130" android:versionName="3.2.65 (834000-30)" uses-sdk android:minSdkVersion="8")但是当我尝试将此库导入我收到java.lang.ClassNotFoundException error after build on TeamCity side 的项目中

问题是:

    如果我将这个旧库包含到我的项目中,是否有可能在新的 Android 操作系统下使用旧的 google-play-services_lib? 是否可以通过使用旧的 google-play-services_lib 来使用 GCM? 导入 google-play-services_lib 有什么问题?

【问题讨论】:

【参考方案1】:

尝试迁移到 Firebase,而不是使用 GCM

Google 现在建议使用 Firebase 通知

https://firebase.google.com/

【讨论】:

【参考方案2】:

我建议您遵循本指南 将适用于 Android 的 GCM 客户端应用程序迁移到 Firebase 云消息传递:https://developers.google.com/cloud-messaging/android/android-migrate-fcm

Firebase:https://firebase.google.com/

我认为本指南非常有用。

【讨论】:

您共享的 firebase 链接适用于 firebase 旧版控制台,它是 firebase 的旧版本。新链接firebase.google.com

以上是关于从 C2DM 迁移到 GCM for Android SDK 19的主要内容,如果未能解决你的问题,请参考以下文章

C2DM 关闭 - 如果仍然使用 C2DM API for GCM 会发生啥?

C2DM 注册 ID 与 GCM 注册 ID?

关于从 C2DM 切换到 GCM 的问题

Google GCM - 未在 android Lollipop 中接收推送通知

为啥 C2DM/GCM 不使用 SMS 作为传输来节省电池寿命?

新 Parse Android SDK 附带的新 GCM(C2DM) 权限是不是会禁用当前应用用户的自动更新?