这是我使用来获取当前位置的代码:
mgr = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
best = mgr.getBestProvider(criteria, true);
if (best == null) {
//ask user to enable atleast one of the Location Providers
} else {
Location location = mgr.getLastKnownLocation(best);
//But sometimes it returns null
}
几乎每次best = network
但它不提供有时的位置 。
mgr.getLastKnownLocation(best) returns null
也:
onResume() {
mgr.requestLocationUpdates(best, 15000, 10, this);
}
和
onPause() {
mgr.removeUpdates(this);
}
是否有这样的情况下,任何替代?
一个可能的办法
List<String> providers = mgr.getAllProviders();
存储所有的供应商和1走1,但从来没有看到这个推荐的任何地方。 此外,要求的最佳供应商是什么样的文档建议。