如何在Root的手机上开启ViewServer,使得HierachyViewer能够连接

实现原理

Hierarchy Viewer:获得当前手机实时的UI信息,方便用于手机的自动化测试;

python中的subprocess.Popen():调用系统命令;

uiautomator工具:获取界面控件信息;

adb命令:对手机进行操作;

 

测试环境

1、HierarchyViewer将把下一台Android设备的4939端口映射到PC的4939端口

adb devices  查看手机设备号

adb -s 手机设备号 forward tcp:4939 tcp:4939

2、判断手机是否开启了view server,如果没开启则开启

adb -s 手机设备号 shell service call window 3  

通过返回值查看

"Result: Parcel(00000000 00000000 '........')  --没开

"Result: Parcel(00000000 00000001 '........')  --开启

开启view server

adb -s 手机设备号 shell service call window 1 i32 4939

关闭 view server

adb -s 手机设备号 shell service call window 2 i32 4939

说明:只有模拟器或者root手机才可以开启view service,实际操作过程中发现root手机开启view service 并非命令可完成,故先行使用模拟器进行测试

关于真机开启参考下面链接:刷成砖机概不负责

http://maider.blog.sohu.com/255448342.html


__EOF__

  • 本文作者: 久曲健的测试窝
  • 本文链接: https://www.cnblogs.com/longronglang/p/6361186.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • posted @   久曲健  阅读(688)  评论(0编辑  收藏  举报
    编辑推荐:
    · 开发中对象命名的一点思考
    · .NET Core内存结构体系(Windows环境)底层原理浅谈
    · C# 深度学习:对抗生成网络(GAN)训练头像生成模型
    · .NET 适配 HarmonyOS 进展
    · .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
    阅读排行:
    · 本地部署 DeepSeek:小白也能轻松搞定!
    · 如何给本地部署的DeepSeek投喂数据,让他更懂你
    · 在缓慢中沉淀,在挑战中重生!2024个人总结!
    · 大人,时代变了! 赶快把自有业务的本地AI“模型”训练起来!
    · 从 Windows Forms 到微服务的经验教训
    点击右上角即可分享
    微信分享提示