- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我需要实现基于位置的服务。我不需要很好的位置,所以不需要 GPS。
最简单的方法是在应用启动时开始监听位置更新,并保持开启状态:
mLocationMgr.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 10000, 100, mPendingIntent);
因为我不需要太多的准确性,所以我将最大更新频率设置为 10s 和 100m,而不是默认的 0、0。
当我们想到位置时,我们会想到电池耗尽,但我想这是一条捷径,只有 GPS 才真正耗尽电池。我认为这样使用网络提供商不会耗尽电池。有什么想法吗?
最佳答案
从电池消耗的角度来看,您的 100 米距离过滤器对您的作用不大。这只会控制您的 PendingIntent
由于修复而被执行的次数。
您的 10 秒时间值可能被操作系统用来控制电源使用,但不能保证。而且,由于值(value)如此之低,它似乎不太可能被使用。可能每小时一次,但不是每 10 秒一次。
更重要的是,您需要始终保持 CPU 处于开启状态。而且,由于您使用的是 requestLocationUpdates()
的 PendingIntent
风格,我猜您计划收集很长时间的数据。
如果您只有 COARSE
权限,Android 有望避开 WiFi 热点接近检测,这将节省一点电量。
总的来说,网络供应商比 GPS 供应商消耗的电量少。 “少”与“少”相去甚远。在 Nexus 级 Android 设备上,GPS + CPU 为我提供了几个小时的电池续航时间(通过使用 Google 导航确定)。我希望网络提供商 + CPU 能多持续几个小时,但仅此而已,因为 CPU 本身就是一个相当大的电池消耗。
我更担心的是:
Easiest would be to start listening for locations updates at app start, and leave it ON
这听起来好像您实际上并不打算删除您的位置更新。对于任何类型的提供者(除了可能 被动提供者),这都是一个非常糟糕的主意。请为注册和删除更新制定更具体的计划。特别是,确保用户能够控制您何时将电池消耗到这种程度。
关于android - 位置提供商真的会耗尽电池电量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8947136/
今年11月份,小米推出了小米手表,号称是腕上“小型手机”,功能性大增的同时也减少了续航时间,官方公布的续航时间为36小时。今天,小米又公布了一款小米手表Color,表盘由方变圆,续航时间也大大增加了
这个问题已经有答案了: Determine accurate iPhone battery level (1 个回答) 已关闭 9 年前。
本文实例讲述了android电源信息查看方法。分享给大家供大家参考。具体如下: 1. PowerTestActivity: ?
我正在编写一个 react 原生应用程序来获取 IOS 和 Android 电池状态。我在网上搜索,发现很少有可以获取手机电池电量的库。 https://github.com/robinpowered
我是一名优秀的程序员,十分优秀!