GoogleApiClient.Builder().addApi() 用于 FCM

GoogleApiClient.Builder().addApi() for FCM

我想确保设备具有用于 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 驱动器,我使用:

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

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

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

的目的

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