java - 适用于 FCM 的 GoogleApiClient.Builder().addApi()

标签 java android firebase-cloud-messaging

我想确保设备具有适用于 Firebase 云消息传递的 Google Play 服务 APK。

我应该在 FCM 的 .addApi().addScope() 方法中添加哪个 API?

例如,如果我想使用位置服务,我在 MainActivity 中添加这段代码:

GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(this)
    .enableAutoManage(this /* FragmentActivity */,
                      this /* OnConnectionFailedListener */)
    .addApi(LocationServices.API)
    .build();

同样为了检查 Google Drive,我使用:

GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(this)
    .enableAutoManage(this /* FragmentActivity */,
                      this /* OnConnectionFailedListener */)
    .addApi(Drive.API)
    .addScope(Drive.SCOPE_FILE)
    .build();

但我不知道 FCM 的 API 和范围值。

最佳答案

只需使用 GoogleApiAvailability.isGooglePlayServicesAvailable() .如果此方法返回 SUCCESS,则表示设备支持您在 build.gradle 中指定的 Google Services API 版本,并且该设备具有 Firebase API;您正在针对此版本构建代码,这意味着此版本支持您在代码中使用的 Firebase API。系统不需要提供对 Firebase API 的访问权限,这就是 addApi() 的目的。

您不需要 GoogleApiClient 即可访问 Firebase API/FCM。

关于java - 适用于 FCM 的 GoogleApiClient.Builder().addApi(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39076065/

相关文章:

android - 如何在 Kotlin Native 中使用 kotlin.system?

android - 在 ubuntu 10.10 中将模拟器切换到横向模式

android - 被阻止 :csp in Android webView

javascript - 如何使用 Node.js 向所有 android 设备发送 FCM 通知

java - 找到随后的数字行(由非字母字符分隔)并计算它们

java - 从位于私有(private)方法中的变量读取

php - 如何在 PHP 中使用 fcm(firebase 控制台)向 iphone 发送推送通知?

javascript - Chrome 中的 Firebase Cloud Messaging Service Worker 重定向

java - Playframework 中的 Akka 版本

java - 如何更新 sql 中包含 & 字符串的 url 列