如何检查 Google Play 服务 API 可用性? (特别是 GCM API)
How do I check for Google Play Services API availability? (specifically the GCM API)
我正在尝试使用 GCM 在我的应用程序和我个人计算机上的小型后端 Java 服务器 运行 之间进行异步通信。我的问题是我无法找出 GCM 和 Google Play 服务的交叉 linked 和矛盾的参考页面。我很想使用这个问题的旧答案之一,但是 API 和文档在过去几个月里进行了修改,我发现的所有类似问题都来自去年或更早的时间。
Google's guide for setting up Google Play Services 表示使用以下任一方法确保所需的 API 存在:
- GoogleApiClientclass,里面提供了使用Drive的例子API(
.addApi(Drive.API)
),但是没有GoogleCloudMessaging.API
我能找到,这样不行。
- "Another approach is to use the isGooglePlayServicesAvailable() method." 这个 link 到 GooglePlayServicesUtil class,但是这个 class 中的几乎每个方法都被弃用了 [=44] =]ApiAvailability 的非静态版本,我希望尽可能避免使用已弃用的代码,这是可以理解的。 GoogleApiAvailability class 也不会让我实例化它。
所以我的问题是:如何确保设备具有 Google Play 服务的更新版本?有没有办法在我使用之前检查 GCM API 是否可用(或者如果 Google Play 服务已更新,我什至需要这样做)?
补充信息:
最小 SDK 14
目标 SDK 22
抱歉没有 link 某些文档,该死的声誉 link 限制。
感谢 Daniel Nugent 指出我错过了 GoogleApiAvailability.getInstance()
的存在!
我正在尝试使用 GCM 在我的应用程序和我个人计算机上的小型后端 Java 服务器 运行 之间进行异步通信。我的问题是我无法找出 GCM 和 Google Play 服务的交叉 linked 和矛盾的参考页面。我很想使用这个问题的旧答案之一,但是 API 和文档在过去几个月里进行了修改,我发现的所有类似问题都来自去年或更早的时间。
Google's guide for setting up Google Play Services 表示使用以下任一方法确保所需的 API 存在:
- GoogleApiClientclass,里面提供了使用Drive的例子API(
.addApi(Drive.API)
),但是没有GoogleCloudMessaging.API
我能找到,这样不行。 - "Another approach is to use the isGooglePlayServicesAvailable() method." 这个 link 到 GooglePlayServicesUtil class,但是这个 class 中的几乎每个方法都被弃用了 [=44] =]ApiAvailability 的非静态版本,我希望尽可能避免使用已弃用的代码,这是可以理解的。 GoogleApiAvailability class 也不会让我实例化它。
所以我的问题是:如何确保设备具有 Google Play 服务的更新版本?有没有办法在我使用之前检查 GCM API 是否可用(或者如果 Google Play 服务已更新,我什至需要这样做)?
补充信息:
最小 SDK 14
目标 SDK 22
抱歉没有 link 某些文档,该死的声誉 link 限制。
感谢 Daniel Nugent 指出我错过了 GoogleApiAvailability.getInstance()
的存在!