我正在开发一款GPS追踪器,它就像一个魅力。但几个星期前,我(一家跟踪公司)的客户为他的司机购买了三星Galaxy S3s。因为我们的应用程序的行为非常奇怪。
该应用程序从GPS接收器接收位置更新,但经过几个小时的工作后,它不会收到任何位置更新。
我已经为onGpsStatusChanged()
注册了应用,并且在此时onGpsStatusChanged()
被调用(我看到GPS接收器有10-17颗卫星!),但方法onLocationChanged()
不是叫!服务重启后(=重新注册LocationListener
)它再次起作用。
真的很奇怪。似乎在经过几个小时的工作后,GPS接收器无法调用onLocationChanged()
:)
知道可能出现什么问题吗?
@matekm: 日志看起来像:
onLocationChanged()< - 新位置
onGpsStatusChanged()(GPS启动/停止/ GPS_EVENT_SATELLITE_STATUS等)
...
onLocationChanged()< - 新位置
onGpsStatusChanged()(GPS启动/停止/ GPS_EVENT_SATELLITE_STATUS等)
...
onLocationChanged()
<<<<< - 从这里没有位置更新更多,除了GPS_EVENT_SATELLITE_STATUS之外没有其他GPS事件状态!
onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 16 onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 17 onGpsStatusChanged()GPS_EVENT_SATELLITE_STATUS numOfSatellites = 15 ...
答案 0 :(得分:0)
我读到了S3支持GLONASS的地方,它的工作方式与通常在其他手机中工作的GPS系统不同,比如S2,虽然我相信GLONASS是备份,但它可以协同工作。可能是它以您的应用程序无法读取的形式发送错误的坐标或坐标。但是如果你说它在S3上工作了4个小时但是却失败了。它不会发生在其他手机上,就在S3上。也许可以方便地缩小它以查看其他手机是否有同样的问题或只是S3?