我有一个应用程序,我在其中创建一个进程并调用dumpsys telephony.registry命令来获取有关移动网络状态的信息。
String[] cmds={"dumpsys telephony.registry"};
Process p = Runtime.getRuntime().exec(cmds [0]+"\n");
Run Code Online (Sandbox Code Playgroud)
然后我解析命令的结果。对于"ls"或其他命令它工作正常。对于 dupmsys 我得到Permission Denial: can't dump telephony.registry from pid-953, uid=10090. 对于dumpsys power或 其他 dumpsys 命令,我得到相同的错误结果。
我已经android.permission.DUMP按照此处的建议在android Manifest 中设置了 DUMP 权限
我认为我这样做是正确的,因为 Android在这里提供了这个功能
我还完成了此处描述的步骤以强制 eclipse 允许我在清单中授予我的应用程序 DUMP 权限。
当我执行 dumpsys 命令时,我总是得到相同的结果
Permission Denial: can't dump telephony.registry from pid-953, uid=10090
难道我做错了什么?为什么 android 操作系统仍然拒绝我访问转储服务?
PS 我已经设置了最小 API 8,我正在运行 (ICS) API 15 的设备上测试应用程序
作为应用程序测试的一部分,我需要以某种方式衡量我的应用程序消耗了多少电量。
在Android中,“电池设置”中有一个图表,我可以在其中看到百分比消耗以及CPU时间或唤醒时间,但是当我的应用在运行时连续使用加速度计时会出现问题。
加速器还具有最强大的待机使用率元素,因此我想以某种方式估计其特定使用率。
加速器电池使用率是否属于Android System或Android OS,或两者都不属于?
如何准确确定加速器电池的使用情况?
注意:我一直在考虑使用万用表和连接电池和设备电源触点之间的电极来测量实际消耗,但我担心会损坏手机。