Windows Phone 8 GeoCoordinateWatcher vs Geolocator

Windows Phone 8 имеет GeoCoordinateWatcher, который присутствует в Windows Phone 7, но также имеет Geolocator, оба из которых выполнить ту же функцию, то есть позволить вам "следить" за изменениями в геолокации. Я не могу найти информацию о том, является ли GeoCoordinateWatcher устаревшим, следует ли использовать Geolocator или различия между ними.

Любые идеи?

Ответ 1

Простой - если вам не нужна или плановая версия для WP7, только для WP8, используйте Geolocator - она ​​лучше конфигурируется, чем GeoCoordinateWatcher.
Или, есть другое решение, которое я использовал в своем приложении, используйте Dependency Injection и реализую общий интерфейс для вашей службы геолокации, который будет реализован с использованием Geolocator в версии WP8 и с использованием GeoCoordinateWatcher в WP7.

Ответ 2

Кроме того, Geolocator может использоваться в фоновом режиме, в то время как GeoCoordinateWatcher не может.

Я написал об этом, когда WP8 SDK просочился. Мой пост ниже, если вы хотите взглянуть, но я считаю, что документация MSDN должна также охватывать его.

http://www.adambenoit.com/development/continuous-location-tracking-windows-phone-8-part-2-background/

Надеемся, что эта дополнительная информация полезна.

Ответ 3

Не только они имеют ту же функцию, но Geolocator действительно быстр, я провел некоторое тестирование, и хотя старый старый GeoCoordinateWatcher получает ваше место примерно за 3 секунды в грубой области, GeoLocator занимает около 0,3 секунды, чтобы найти вас, Так выиграйте для GeoLocator.

Кстати, я думаю, что "Geolocator может работать в фоновом режиме", они ссылаются на использование его, как в этом примере: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj662935(v=vs.105).aspx

То есть без ограничений фонового агента. Я бы порекомендовал, чтобы мы начали использовать GeoLocator, unles вне курса, вы нацеливаете как WP 7.8, так и WP8