首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在仿真器设置GUI中或通过telnet设置电池电平/状态与设置adb哑元电池有何不同?

在仿真器设置GUI中或通过telnet设置电池电平/状态与设置adb哑元电池有何不同?
EN

Stack Overflow用户
提问于 2020-02-09 19:12:59
回答 1查看 419关注 0票数 0

我正在尝试创建一个监测电池电量的应用程序,但由于实时测试会非常麻烦,我想通过模拟器模拟不同的值和充电状态。

当我单击"...“进入仿真器设置GUI时在工具栏上,然后转到“电池”并更改值,它在仿真器中不起作用。操作系统的电池指示灯始终显示电池电量为100%等。

在研究过程中,我发现了另外两种改变电池状态的方法:

通过telnet和adb。Telnet与模拟器设置GUI中设置的值匹配,反之亦然,但不会更改系统中的实际值。电池状态指示器和使用batteryStatus.getIntExtra等获取值都不受影响。只有使用adb shell dumpsys battery set level 20才能提供所需的效果。

为什么?那么telnet和设置中的控件实际上会发生什么变化呢?有没有办法让这些设置真正起作用,这样我就可以通过模拟器设置GUI更改电池电量和状态?

我使用的是Windows10上的Android Studio 3.5.3和它附带的仿真器,版本29.3.4-6110076,API 29。

EN

回答 1

Stack Overflow用户

发布于 2020-07-01 19:01:59

在Android Pie下,telnet路由可以工作(至少,对于我们用来测试的相对较旧的AVD是有效的)-它联系构成Android模拟器基础的qemu系统,您可以设置电源容量为20或更多。GUI似乎使用此路由。这些参数由dumpsys battery逻辑反映...直到您开始通过dumpsys battery set设置它们,在这一点上,哑元开始忽略QEMU值。

在Android 10下,似乎只有adb命令生效,所以他们对qemu参数的跟踪被打破了-我没有看到任何关于它的公告,所以我认为这是偶然的。

如果它不再在GUI中工作,那么Emulator团队中大概没有人告诉GUI团队他们计划中断qemu路由。

我注意到,尽管在CPU级别的上下文切换较少,但Android 10的模拟速度明显慢于Pie,因此可能有更深层次的东西发生了变化,而qemu链接是一个牺牲品。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60135990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档