尝试在侦听器中放置以下调试代码,以查看何时启用或禁用位置提供程序。这将告诉你,当你的提供商改变状态,可能会对你的应用程序运行时发生的事情有所了解。
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
switch (status) {
case LocationProvider.TEMPORARILY_UNAVAILABLE:
Toast.makeText(mCtx, "Your location is temporarily unavailable",
Toast.LENGTH_SHORT).show();
break;
case LocationProvider.OUT_OF_SERVICE:
Toast.makeText(mCtx, "Your location is now unavailable", Toast.LENGTH_SHORT)
.show();
break;
case LocationProvider.AVAILABLE:
Toast.makeText(mCtx, "Your location is now available", Toast.LENGTH_SHORT)
.show();
}
}