微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我的Android位置管理器修复程序是否来自手机信号塔或Wi-Fi

如何解决我的Android位置管理器修复程序是否来自手机信号塔或Wi-Fi

我有一个Android应用程序,该应用程序使用LocationManager通过精细(GPS)或粗糙(网络/ Wi-Fi)位置获取地理位置定位信息,并且我需要知道任何特定的定位信息来自何处。

我可以使用

如果(LocationManager.GPS_PROVIDER.equals(location.getProvider())){...

确定此修复来自GPS 和

如果(LocationManager.NETWORK_PROVIDER.equals(location.getProvider())){...

确定是来自移动网络还是来自wi-fi,但我不知道是哪个。

我的问题是该应用程序旨在用于火车,并且火车wi-fi并不总是能提供正确的位置(我曾经在欧洲之星从伦敦旅行到巴黎,在整个旅程中,地理位置告诉我我们当时在巴黎北站-即使火车在伦敦圣潘克拉斯!)

有人知道一种告诉LocationManager忽略wi-fi并只给我移动网络或GPS位置的方法吗?如果这不可能,那么至少是否有办法判断出粗略位置是否来自wi-fi的移动网络?

解决方法

我想在寻找其他东西时偶然发现了自己的问题的答案。我发现这句话:

应用程序无法指定LocationClient使用的确切位置源,例如GPS。实际上,系统可能正在运行多个位置源(提供者),并且可能会将来自多个源的结果融合到单个位置对象中。

此处:

https://developers.google.com/android/reference/com/google/android/gms/location/LocationRequest

看起来好像我做不到我想要的。如果有人知道方法,请告诉我。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。