3

我总是很难找到设备即时定位的好方法。我想要做的是每次使用应用程序(例如,当调用活动的 onCreate 时)我想知道设备在那个确切时刻的坐标,并且不再要求它们。我认为最好的方法是拥有一个类似于静态类的东西,其功能类似于:

coordinates getCoordinates();

一些建议/片段给?

4

2 回答 2

6

使用LocationManager.getLastKnownLocationLocationManager.requestSingleUpdate

第一个将立即返回,但如果没有可用的位置,则 可能返回null 。

第二个将在回调中返回您的数据,但会唤醒所需的任何提供者并获得一个好的位置(如果可能的话)。

于 2013-01-21T08:55:25.187 回答
2

我在这个答案中找到了我真正在寻找的东西。

我只添加了两个控件;我检查是否:

  • gps_loc.getTime()(或 net_loc.getTime())大于 System.currentTimeMillis() - 300000(5 分钟前)。在内部类GetLastLocation的方法run()中;
  • location.getAccuracy() < 100。在两个 LocationListeners(网络和 GPS)的 onLocationChanged() 方法中。

希望能帮助到你!

于 2013-01-29T16:08:28.677 回答