У меня быть_наст этот код, чтобы получить лучшие предоставляющие услугиандроид прибудет расположение от лучшего поставщика доступны
lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationListener = new MyLocationListener();
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
String provider = lm.getBestProvider(criteria, true);
Location mostRecentLocation = lm.getLastKnownLocation(provider);
if(mostRecentLocation != null) {
latid=mostRecentLocation.getLatitude();
longid=mostRecentLocation.getLongitude();
}
lm.requestLocationUpdates(provider, 1, 0, locationListener);
, а затем слушатель
private class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
if (loc != null) {
latid = loc.getLatitude();
longid = loc.getLongitude();
// if(loc.hasAccuracy()==true){
accuracyd = loc.getAccuracy();
String providershown = loc.getProvider();
accuracy.setText("Location Acquired. Accuracy:"
+ Double.toString(accuracyd) + "m\nProvider: "+providershown);
accuracy.setBackgroundColor(Color.GREEN);
// }
userinfo=usernamevalue+"&"+Double.toString(latid)+"&"+Double.toString(longid);
submituserlocation(userinfo);
}
}
Когда я тестировал его на устройство (HTC Magic) I выяснилось, что при отключении gps он немедленно блокируется из сети. Когда я включаю gps, он не принимает никаких данных из сети и ждет, пока он не закроется из gps.
Я хотел бы заблокировать позицию, такую как карты google, пока они не получат хороший сигнал gps, который они используют в сети, чтобы определить мое местоположение.
Я, хотя лучшие критерии будут делать это, но то, что они делают, выбирает поставщика один раз.
Что-то не так с моим кодом, или я должен делать потоки и таймауты и т. Д., Чтобы это произошло?
spagi код мне очень помог - нигде на андроид сайте Dev это объяснило, как получить наилучший поставщик. Некоторые устройства могут иметь gps, некоторые gsm, некоторые Wi-Fi. –
Вот очень интересная статья в Google: http://developer.android.com/training/basics/location/currentlocation.html – shkschneider