android - monkeyrunner easy.By viewid

标签 android monkeyrunner

我的 android Activity 带有选项菜单,id 为 R.id.createRepository。现在我想用 monkey runner 向它发送触摸事件。我需要获取 View ID,并尝试了以下代码:

from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice  
from com.android.monkeyrunner.easy import EasyMonkeyDevice, By  

device = MonkeyRunner.waitForConnection()  
easy_device = EasyMonkeyDevice(device)  

# Start your android app

# touch the view by id

easy_device.touch(By.id('id/createRepository'), MonkeyDevice.DOWN_AND_UP) # in activity java code I can refer to it as R.id.createRepository and I have even tried passing it in 

但是 moneyrunner 找不到 View 。我需要帮助来定义正确的 View ID。

问候,

米腾

最佳答案

您可以使用 uiautomatorviewer 来查找 View 的 ID。它是位于工具下的 android-sdk 文件夹中的工具。

只需在具有未知 ID 的 View 所在的屏幕中打开您的应用程序。然后打开uiautomatorviewer并截图。您将找到包含所有 View 详细信息的应用布局。

关于android - monkeyrunner easy.By viewid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18590566/

相关文章:

android - Ionic Android 内部共享内存

android - 为什么 HierarchyViewer 的 findViewById 如此缓慢?

android - 如何以编程方式接听电话?

java - 您应该在生命周期的哪个部分初始化服务使用的 fragment 中的对象?

android - 如何使用 monkeyrunner 结束来电?

android - 为什么 MonkeyRunner.waitForConnection() 错误 "Adb rejected adb port forwarding command: cannot bind socket"

android - Android 模拟器中的 Shell 命令无响应异常?

Android 如何用手指移动View

android - 通过 Intent.ACTION_SEND 共享文件时,Google 云端硬盘将文件名更改为 Intent.EXTRA_SUBJECT