LocationManager: странное поведение после обновления Gingerbread на HTC Desire HD

#android #locationmanager

#Android #locationmanager

Вопрос:

С тех пор, как я обновил свой HTC Desire HD до Gingerbread (2.3.3, официальное обновление), LocationManager больше не работает корректно. Значок GPS, принадлежащий Android, мигает (в поисках исправления), и когда исправление было установлено, значок исчезает. Через несколько секунд значок снова мигает и снова исчезает…

Странно то, что я ничего не изменил в своем коде, и тот же код работает, как ожидалось, на других устройствах, таких как HTC Desire или Nexus S.

 mLocationManager= (LocationManager)getSystemService(Context.LOCATION_SERVICE);
mLocationListener = new MyLocationListener();

// begin with requesting GPS
mLocationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 60000, 10, mLocationListener);
  

Когда функции определения местоположения запускаются в моем приложении, я получаю огромное количество сообщений от logcat:

 05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): addListener(org.myApp)
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): setMinTime 60000
05-15 15:01:47.322: VERBOSE/GpsLocationProvider(1344): enableLocationTracking   
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): startNavigating
05-15 15:01:47.322: DEBUG/lib_locapi(1344): [GPS:] loc_eng_set_qos_time_out(standalone = 60000, agps = 89000)
05-15 15:01:47.322: VERBOSE/GpsLocationProvider(1344): set_agps_qos_time_out complete
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): android_location_GpsLocationProvider_set_position_mode 
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): GetGpsInterface 
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): GetGpsInterface-
05-15 15:01:47.322: DEBUG/GpsLocationProvider(1344): android_location_GpsLocationProvider_set_position_mode-  (get interface sucess)
05-15 15:01:47.322: DEBUG/lib_locapi(1344): [GPS:] loc_eng_set_position mode, client = 1, interval = 1000, mode = 1
05-15 15:01:47.322: VERBOSE/LocationManagerService(1344): requestLocationUpdates
05-15 15:01:47.332: DEBUG/lib_locapi(1344): [GPS:] loc_eng_set_position mode: GPS_POSITION_MODE_MS_BASED
05-15 15:01:47.332: DEBUG/lib_locapi(1344): [GPS:] loc_eng_set_position mode before IOCTL, interval=1000, mode =2 preferred_accuracy=50, qos_timeout_standalone=89000, recurrence_type=2
05-15 15:01:47.332: VERBOSE/lib_locapi(1344): loc_eng_ioctl called: client = 1, ioctl_type = 2
05-15 15:01:47.332: VERBOSE/locapi_rpc_glue(1344): loc_ioctl
05-15 15:01:47.332: DEBUG/RPC(1344): written RPC packet size: [96]
05-15 15:01:47.332: DEBUG/RPC(1344): read RPC packet
05-15 15:01:47.332: DEBUG/RPC(1344): read RPC packet size: [28]
  

Я протестировал некоторые другие установленные приложения на HTC Desire HD, такие как Googles MyTracks, и там все работает правильно.
Итак, я действительно не знаю, почему эта проблема появляется только с моим приложением только на HTC Desire HD.

Спасибо за чтение и вашу помощь!

С наилучшими пожеланиями, Майк

Комментарии:

1. Я сталкиваюсь с точно такой же проблемой на моем HTC Desire S (установленный на заводе Android v.2.3.3; мой не обновлялся). Итак, вы нашли решение этой проблемы?