我无法收到位置

时间:2013-02-01 21:59:32

标签: java android location

我正在建立一个基于位置的应用程序,一切都很好,直到有一天我停止接收位置..我不知道为什么。我将附上重要的代码:

private LocationManager mLocationManager;
public void onCreate() 
{
    super.onCreate();
    ...
    // Get a reference to the LocationManager object.
    mLocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    ...
    setup();
}
private void setup() 
{
    mLocationManager.removeUpdates(listener);

    // Request updates from just the providers.
    if (mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) 
        mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, ONE_MINUTE, 0, listener);

    if (mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) 
        mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, ONE_MINUTE, 0, listener);
}


    @Override
    public void onLocationChanged(Location location) 
    {
        handleLocation(location);
    }

我在onLocationChanged上设置了一个断点,没有发生任何事情..我在我的应用程序的其他行测试了它,以确保调试配置正常工作并且它正在运行。看起来我只是没有收到任何地点。

也许我没有看到什么。

2 个答案:

答案 0 :(得分:0)

我有很好的代码来接收位置:

public class Locato extends Activity implements LocationListener { 
  LocationManager locman; 
  @Override 
  public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.idlayout); 
    locman = (LocatonManager) getSystemService(Context.LOCATION_SERVICE); 
  } 

  public void onStatusChanged(String pr, int s, Bundle a) {
  } 

  @Override public void onProviderDisabled(String provider)
  { 
    Log.d("MyApp", "Provider disabled : " + provider); 
  }
  @Override public void onProviderEnabled(String provider) {
    Log.d("MyApp", "Provider enabled : " + provider);
  } 
  @Override public void onLocationChanged(Location location) { 
// do something 
  }
}

尝试使用此功能。 不要忘记在清单中添加ACCESS_FINE_LOCATION权限。

答案 1 :(得分:0)

相同的代码现在生成位置,当我说它可能是因为它是阴天但现在当云已经消失时,这是一个笑话。我无法想到任何其他事情,只是为了澄清它是非常多云甚至可能是一场小风暴。