无需再手动检查Google Play服务版本了吗?

时间:2018-02-20 11:05:38

标签: android google-play-services fusedlocationproviderclient

自从我使用Google Play服务以来已经有一段时间了,我现在正在实施一项需要进行位置跟踪的功能。在使用GoogleApiClient的日期示例后,我在Android开发者博客上发现了有关新位置API的帖子:

https://android-developers.googleblog.com/2017/06/reduce-friction-with-new-location-apis.html

FusedLocationProviderClient client =
    LocationServices.getFusedLocationProviderClient(this);

client.requestLocationUpdates(LocationRequest.create(), pendingIntent)
    .addOnCompleteListener(new OnCompleteListener() {
      @Override
      public void onComplete(@NonNull Task task) {
        Log.d("MainActivity", "Result: " + task.getResult());
      }
    });
}

引起我注意的是帖子底部写的东西,说:

  

新API将自动解决某些连接失败问题   你,所以你不需要编写类似于提示之类的代码   用户更新Google Play服务

由于我已经使用GoogleApiAvailabilty编写了这段代码,我很好奇是否可以安全删除它并让FusedLocationProviderClient处理它?<​​/ p>

我试图找到另一个来源来验证这一点,但失败了,对博客文章底部的半行不满意,因此在这里发布了问题。

1 个答案:

答案 0 :(得分:0)

好的,所以我会在快速测试后回答我自己的问题。我暂时删除了确保Google Play服务可用且支持正确的支票。然后在没有Google Play服务的模拟器上安装了该应用,当我尝试使用LocationServices API时,我收到了一个棘手的抬头通知说:

  除非您更新Google Play服务,否则

[app name]将无法运行。

所以我想删除支票是安全的。

值得注意的是,除非用户实际与通知进行交互,否则不会调用侦听器(成功/失败/完成),例如,如果他们仅按应用UI中的其他内容,则不会调用侦听器。< / p>