问题标签 [batterymanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1323 浏览

android - Android:如何在没有 API 级别 17 及以上的广播接收器的情况下获取电池状态?

我想获取电池状态。我在堆栈上搜索它,我找到了使用广播接收器的示例代码,但问题是在我的代码中我不能使用广播接收器。

那么有什么方法可以在不使用广播接收器的情况下获取电池状态。API 21 及更高版本是可能的,但我希望它适用于 API 17 及更高版本。谢谢

0 投票
1 回答
1313 浏览

android - Socket.IO 与服务耗尽电池戏剧性(Android)

再会。

考虑到电池管理的最佳实践,我有一个问题。

事先请不要建议GCM也不要建议Firebase,因为我对它们不感兴趣,我会在之后告诉原因。

所以这里是场景。

我自己部署了一个社交网络。

我几乎不相信ViberWhatsAppTelegram正在使用GCMFirebase等任何 Google 服务,而且我已经使用了它们,而且我对它们的延迟以及我收到的定价非常不满意,所以对我来说这是最好的选择是将所有通知保存在 Socket.IO 的引擎盖下。

所以现在的每一步:

• 我创建了一个始终运行的服务,无论如何它都在运行。

• 服务附加了 Socket.IO 库,并且服务通过 Socket.IO 保持与服务器的持久连接。

• 该服务处理所有 Socket.IO 逻辑,接下来是:完整的应用程序通知 - 组通知、好友请求、消息通知以及所有这些通知,我的应用程序中大约有 10 种通知类型。

• 一切都很完美,除非我看到我的三星 S7 Edge 抱怨我的应用程序的使用情况。我虽然这是三星典型的抱怨之一,但当我看到电池使用情况时,我感到震惊......我的应用程序使用的电池比安卓操作系统多,这对我来说是一个很大的打击。

我将很快向您展示我的服务代码:

我正在像这样初始化套接字。

在服务的回调中销毁它,onDestroy如下所示:

重要注意事项,我每 10 分钟启动一次服务,这保证了如果系统终止服务进程,它会再次启动并且不会对用户造成延迟。

我的问题是下一个:

如何优化所有这些逻辑以不消耗更多的手机电池而不是Android 操作系统,因为以这种方式消耗用户的设备电池是荒谬的,但我相信必须有一些好的做法,我不能使用 firebase 或 GCM 和我不能关闭套接字并打开它很晚,让用户感到巨大的延迟,因为它会分散用户对我的应用程序的注意力......

那么有什么想法或代码改进吗?

0 投票
2 回答
94 浏览

ios - 如何在 IOS 中以小时、分钟和秒获取电池状态?

如何在 uilabels 中显示电池状态(小时、分钟和秒) (03:49:33)。当电池耗尽时减少时间。如何检查电池状态

0 投票
1 回答
3115 浏览

android - 使用 ADB 命令测量特定应用程序或包名称的电池消耗

使用特定包名称的 ADB 命令测量电池消耗。

自上次对 android 设备充电以来,包名称的电池统计信息。测量设备的性能或在 android 设备中自动执行应用程序的非功能测试

0 投票
0 回答
245 浏览

java - ACTION_BATTERY_CHANGED 不更新设备的 EXTRA_STATUS

我正在使用ACTION_BATTERY_CHANGED意图过滤器来接收来自 android 的广播消息。

我正在使用以下代码

在这里,我按照 android 官方文档中的说明检查电池充电状态。

当我在充电模式下运行应用程序时,它给我EXTRA_STATUS的值为 2 即BATTERY_STATUS_CHARGING预期的值。但是,当断开充电器与设备的连接并从 android 获得另一个广播时,它仍然向我发送与充电相同的状态。预计会向我发送 status BATTERY_STATUS_NOT_CHARGING

为什么它在发送更新的广播时不更新状态?

0 投票
1 回答
494 浏览

android - 在 Android 中以编程方式监控电池电量 - BroadcastReceiver vs Handler

我想知道,在Android中以编程方式监控电池电量的更有效方法是什么 - 使用连续监控电池电量的BroadcastReciever,或postDelayed使用Runnable调用每10分钟检查一次电池电量的处理程序?

当电池电量低于特定百分比时,我想警告用户。哪种方式会更有效率?

0 投票
1 回答
109 浏览

batterymanager - 我可以编写真正警告我的笔记本电脑电池的交流程序吗?

是否可以用 C 编写来获取警报。如果是,当我的电池电量下降 40% 或升至 80% 时,应用什么概念来获得警报?

0 投票
2 回答
314 浏览

android - 确定 Android 电池当前是否电量不足

我知道我可以注册一个BroadcastReceiverforACTION_BATTERY_LOW并且ACTION_BATTERY_OKAY当这个电池 LOW 状态改变时它会通知我的应用程序,但是我如何确定电池当前是LOW 还是 OKAY?

BatteryManager可能允许我获取当前的百分比和状态,但它似乎没有公开 LOW 的状态。

0 投票
1 回答
316 浏览

android - 清单中声明的​​电池广播接收器不起作用

我想接收广播BATTERY_LOW,所以我在清单中声明了广播接收器(为了不依赖当前活动。我希望我的应用程序即使在它没有运行时也能接收到这个广播。这就是我所做的。

和 BatteryLevelReceiver 本身(包 com.wayruha.serviceguard.onduty):

我可以t receive any of declared events!There are some similar questions here, but none of them helps me. I使用 telnet 为模拟器设置容量或“ac on/off”。

0 投票
1 回答
334 浏览

android - 为什么 BatteryManager 返回错误的温度值?

我正在尝试将 BQ27531 电池电量计集成到 i.MX6 SoM 中。我加载了驱动程序,在 sysfs 上一切看起来都很好。当我运行时cat /sys/bus/i2c/devices/2-0055/power_supply/bq27531-0/temp,我得到一个正确的值 247(这意味着 24.7°C)。

现在,我想在Android系统中获取值。我写了一个简单的应用程序,基本上调用:

这应该给我温度读数,但它返回 424 (42.4°C)。为什么温度值不对?我确信电池在室温附近。