我正在使用谷歌播放服务来获取用户的最后一次已知连接。getLastLocation不能在第二次工作
@Override
public void onConnected(Bundle connectionHint) {
final Location lastLocation = LocationServices.FusedLocationApi.getLastLocation(
_googleApiClient);
}
@Override
protected void onResume() {
super.onResume();
connectToGooglePlay();
}
@Override
protected void onPause() {
super.onPause();
if (_googleApiClient != null) {
_googleApiClient.disconnect();
}
}
按预期工作。
每当我点击返回按钮,然后再次启动应用程序时,就会出现问题。我的应用程序崩溃,因为getLastLocation
返回null。正式文档状态 -
如果某个位置不可用,而这种情况很少发生,则会返回空 。
很好,但是我知道确实存在一个位置,我刚刚在第二个前检索它。
我做了一个快速实验,去除_googleApiClient.disconnect();
和它的作品,不知何故断开删除最后一个位置
为什么?我错过了什么吗?
为什么你断开创建一个新的建设者?你有没有尝试删除? –
@CodyHarness这就是我写的,我删除断开连接,它的工作原理,但根据正式的文件,建议在onStop断开连接 –