因此,我有以下代码:
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
makeUseOfNewLocation(location);
}
public void onStatusChanged(String provider, int status, Bundle extras) {}
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
};
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, Integer.MAX_VALUE, 1 locationListener);来自http://developer.android.com/guide/topics/location/strategies.html
但问题是,我想每隔一米就给makeUseOfNewLocation(location);打一次电话,我穿过我的房子(我的互联网上有供应商),但仍然没能进入makeUseOfNewLocation(Location location)。
我使用Integer.MAX_VALUE,因为请求的时间并不重要。
我怎样才能解决这个问题?你能帮帮我吗?
发布于 2014-04-06 23:52:39
具有Integer.MAX_VALUE的第二个参数是放置距离的位置。
参见LocationManager在http://developer.android.com/reference/android/location/LocationManager.html#requestLocationUpdates(long上的文档
如果其他一切都正常的话,1f而不是Integer.MAX_VALUE应该这么做。
实际上,编辑,查看文档。看起来你的调用有一点不准确(对于你想要做的事情-看起来是函数的错误版本)。
基于您的回复,编辑#2将无限设置为更新之间的最短时间。试试0f。另外,对于minDistance,请尝试使用1f而不是1来确保它是一个浮点数。
https://stackoverflow.com/questions/22901427
复制相似问题