Наилучий провайдер дает наихудший результат...

Ответить
Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Наилучий провайдер дает наихудший результат...

Сообщение Mikhail_dev » 01 мар 2012, 18:09

Здравствуйте. Есть вопрос по выбору наилучшего провайдера
код создания сервиса

Код: Выделить всё

public void onCreate() {
		super.onCreate();
		locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
		locationManager.requestLocationUpdates(this.getBestProvider(), 9000, 1, this);
	}
и метод getBestProvider

Код: Выделить всё

	private synchronized String getBestProvider() {
		Criteria criteria = new Criteria();
		criteria.setAccuracy(Criteria.ACCURACY_FINE);
		criteria.setAltitudeRequired(true);
		criteria.setBearingRequired(true);
		criteria.setSpeedRequired(true); 
		criteria.setCostAllowed(false); 
		criteria.setPowerRequirement(Criteria.POWER_HIGH);
		String bestProvider = locationManager.getBestProvider(criteria, true);
		return bestProvider;
	}
При таком раскладе , получается такая картинка с координатами
http://s41.radikal.ru/i093/1203/71/10690745aadb.jpg
где линии сходятся, там мой дом. Но на сервер начинают отсылаться какие-то страшные координаты, с погрешностью в несколько десятков километров о_О
Что было нужно: получать наиболее точные координаты, независимо от батареи. Т.е. не важно как она тратится. Но что я делаю не так? В классе Критерия, я всё указал, чтобы выбирался наилучший провайдер. Подскажите в какую сторону копать или что не так делаю.

SoLVeX
Сообщения: 15
Зарегистрирован: 21 фев 2012, 19:11
Контактная информация:

Re: Наилучий провайдер дает наихудший результат...

Сообщение SoLVeX » 06 мар 2012, 22:50

Может указать параметры для getBestProvider?
http://developer.android.com/reference/ ... 20boolean)


Ответить