【发布时间】:2017-04-02 18:10:01
【问题描述】:
我正在尝试使用 Google Location API 在我的Activity 中获取用户的位置。我有一个按钮,如果用户点击该按钮,则应检索用户的位置并将其发送到应用程序后端。
根据 Google 的文档,
LocationServices.FusedLocationApi
.getLastLocation(apiClient)
方法必须在onConnected 方法中调用。但是,如果我不检查用户授予的权限,该方法会引发错误。
我的问题是我在按钮的onClick 方法中请求许可。
我试着放了
LocationServices.FusedLocationApi
.getLastLocation(apiClient)
在onClick 方法中,但它返回一个空对象。
是否有适当的方法可以通过点击按钮而不是在活动的onCreate 方法中向用户询问位置许可,并且仍然能够获取用户的位置?
【问题讨论】:
-
“但是,如果我没有检查用户授予的权限,该方法会抛出错误”——如果你没有在那里检查权限,你可能会在 IDE 中收到警告。这只是一个 IDE 警告。只要您确定在此之前检查运行时权限,就可以了。
标签: android android-6.0-marshmallow android-permissions google-location-services