- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
对于我的 Android 应用程序,我需要监控所有运行该应用程序的手机的电池消耗情况。在应用程序中需要有一个按钮来启动和停止监控,并且在监控停止后,电池监控输出应在手机本身上保存为 txt。我已经查看了 batterystats,但根据文档,监控过程是通过将设备连接到 PC 启动的,监控后重新连接设备并进行转储。
那么是否可以在不连接电脑的情况下启动和停止监控,并将输出保存在手机本地?
最佳答案
当有变化时,您可以使用广播接收器接收有关电池的信息。
private BroadcastReceiver mBatteryInfoReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context ctx, Intent intent) {
mLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, Const.VALUE_UNSET);
mTemperature = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, Const.VALUE_UNSET);
mStatus = intent.getIntExtra(BatteryManager.EXTRA_STATUS, Const.VALUE_UNSET);
mPlugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, Const.VALUE_UNSET);
mScale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, Const.VALUE_UNSET);
mHealth = intent.getIntExtra(BatteryManager.EXTRA_HEALTH, Const.VALUE_UNSET);
mVoltage = intent.getIntExtra(BatteryManager.EXTRA_VOLTAGE, Const.VALUE_UNSET);
mTechnology = intent.getStringExtra(BatteryManager.EXTRA_TECHNOLOGY);
}
不要忘记在您的 Activity (或服务,如果它应该在后台运行)中注册(取消)注册接收器。
注册(onCreate/onStart...):
registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
注销(onPause/onDestory):
unregisterReceiver(...)
写入文件应该不会太难,只需在此处搜索 SO 并且不要忘记设置权限(对于处理文件也是如此):
<uses-permission android:name="android.permission.BATTERY_STATS"/>
关于Android 应用程序电池监控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34704150/
我开发游戏已经有一段时间了,我开始意识到我的应用程序很快就会耗尽设备电池。我通过 XCode 仪器测量了能量消耗,一般在 17/20 范围内。我有一些背景动画,禁用它们似乎确实有帮助。出于好奇,我使用
我有两个原型(prototype)电池。如果 messagesArray[indexPath.row] 值为“”,则出现一个,如果该值包含字符,则出现另一个。其中一个单元格的行高大于第二个单元格的行高
我有一个弹出窗口,弹出窗口内部是一个相机按钮,我的相机工作正常,但顶部的电池符号与相机重叠,下面是屏幕截图。 如果有人知道答案,我们将不胜感激。 最佳答案 您可以隐藏该 View 的状态栏,这样它就不
有没有办法从 Android SDK 获取电池信息?比如剩余电池生命周期等等?我无法通过文档找到它。 最佳答案 这是一个简单的示例,可以让您了解电池的使用量、电池电压和温度。 将以下代码粘贴到 Act
我想删除状态栏(显示时间和电池状态)。就像在涂鸦跳跃或其他游戏中一样。 我怎样才能做到这一点? 谢谢 :) 最佳答案 http://iphonesdkdev.blogspot.com/2008/06/
已经阅读了关于同一主题的其他 SO 帖子,并且在以下方法之间做出决定: Thread 1与 Thread 2与 simple onLocationUpdate() 有人可以帮助我了解所有这些的利弊吗?
最近 google 推出了推送到设备服务,但它仅适用于 2.2 及更高版本。 我的应用程序中需要一个类似的系统,并且我正在尝试绕过限制。 问题是电池生命周期。由于必须立即通知用户有关服务器上的更改,我
Closed. This question needs to be more focused。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅关注editing this post一个问题。 6
我有两个原型(prototype) TableViewCells。现在,一个只是另一个的复制粘贴。 BasicCell 和 BasicCell2 。我刚刚为 BasicCell2 复制了 BasicC
我目前正在为 iPhone 开发一个聊天客户端。服务器端有一个带有 Socket.IO 的 node.js,在 iPhone 上有一个 Socket.IO 客户端( https://github.co
所以我发现没有公开的方法来获取 watchKit 中的电池电量。 所以没有UIDevice.currentDevice().batteryLevel和WKInterfaceDevice不接缝有货。 在
由于 Google 在其网站上提供了适用于 Android L 的更新 SDK。我一直在尝试测试新的电池历史记录功能。 Google API 概述 website声称该工具在 sdk/tools 下可
我已经安装了全新的 Catalina 和 Android Studio。事实证明,当我启动模拟器时,模拟器进程会占用大量 CPU 周期。查看 adb shell 中的 top,我得到了一些我不理解的进
我修复了 iOS 7 的问题,导航栏是重叠 TableView 。 我用这个代码 //for help navigation bar overlap if ([self respondsToSelec
今天,小爱同学官微发布消息宣布,Redmi 小爱触屏音箱 Pro 正式推出,该机搭载 8 英寸屏幕,配备电池可不用时刻连接电源,售价 499 元,新品将于 9 月 9 日 0 点正式开售。 作
我是一名优秀的程序员,十分优秀!