Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER) 在现实生活中多久返回一次 null?

Posted

技术标签:

【中文标题】Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER) 在现实生活中多久返回一次 null?【英文标题】:Android: How often does getLastKnownLocation(LocationManager.NETWORK_PROVIDER) return null in real life? 【发布时间】:2011-04-10 15:01:38 【问题描述】:

android 用户是否有机会重置 NetworkProvider,使位置为空? 我想出了一个想法,即在第一次启动设备后,唯一可能使该位置为空。但也比谷歌会立即检查我的意见的位置。

当然,我正在为这种罕见的情况实施默认位置。我只是想知道这种情况很少见。

【问题讨论】:

【参考方案1】:

当服务在设置>位置和安全>通过网络的位置被禁用时,它返回'null'

所以这种情况经常发生。

【讨论】:

【参考方案2】:

取决于用户连接到 Internet 的频率。

必须将单元格 ID 转换为坐标,并且据我所知有一个缓存,即使在离线时它也会记住已翻译的单元格 ID,但在新的单元格 ID 上,它不会为您提供位置更新,直到手机没有连接到互联网。

无论如何,您总是需要检查位置的日期,因为它可能已经过时了。尤其是在您将手机置于飞行模式并前往世界其他地方之后。

【讨论】:

【参考方案3】:

在我的测试中,我发现它经常为空。没有用户告诉他们,没有很多东西会消耗 GPS。但是 getLastKnownLocation 的问题在于它可能已经过时了。因此,即使它不为空,也可能是数小时甚至数天

【讨论】:

嘿法尔马里。我要的是 NETWORK_PROVIDER 提供的位置数据,而不是 GPS。除了 null 之外的任何东西都可以! 哦。唔。我从来没有真正尝试过只使用网络提供商的位置而不注册监听器。如果我有机会明天我会在我的手机上运行它【参考方案4】:

这可能还取决于您轮询它的频率。 也就是说,如果您不经常检查它,它可能会被设置为 null 并停留一段时间。

locationManager.requestLocationUpdates(provider, minTime, minDistance, 这个);

我借了一个项目作为 mapActivity 项目的骨架。在我插入 requestLocationUpdates() 调用之前,它一直返回 null(使用 gps 提供程序)。

【讨论】:

以上是关于Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER) 在现实生活中多久返回一次 null?的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )

android 21 是啥版本

Android逆向-Android基础逆向(2-2)

【Android笔记】android Toast

图解Android - Android核心机制

Android游戏开发大全的目录