好吧,实际上,两者都是有效的响应,我的意思是,Android 提供了 3 种类型的位置提供程序:
GPS_PROVIDER: This provider determines location using satellites. Depending on
conditions, this provider may take a while to return a location fix.
NETWORK_PROVIDER: This provider determines location based on availability of cell
tower and WiFi access points. Results are retrieved by means of
a network lookup.
PASSIVE_PROVIDER: This provider can be used to passively receive location updates
when other applications or services request them without
actually requesting the locations yourself. This provider will
return locations generated by other providers.
当您选择 Network Location Provider 时,您既可以访问 Google 的位置服务并向其提供信息,并且为了提供最佳位置,该机制不仅使用 Cell 信号强度,而且还使用 WiFi 信息来三角定位位置。我会推荐这篇文章来开始使用 Android 位置:Android 位置入门
实际上,这也是辅助 GPS (AGPS) 背后的“魔力”:在 GPS 设备中检索信息的最慢部分是寻找卫星,因为你必须寻找所有可用的卫星 (30),因为你实际上不知道你的初始位置。借助基于网络的位置,可以使用 AGPS 进行粗略的位置估计,然后,您可以显着限制您的卫星列表(仅限于您估计位置中可用的卫星),从而大大加快了进程。
一些有趣的文章:Android Location Providers , Mobile Phone Tracking , Android Location Manager class和Android Location Strategies