如何从 uiautomator 获取 android 设备的正确资源 ID?

how to get the correct resource id for an android device from uiautomator?

我对 uiautomator 中的资源 ID 有疑问:

btn="id:/image_button_cancel"

为什么有时我们加上“.*”那是什么意思?

btn="id:/image_button_cancel.*"

我没有完全理解你的问题。能否详细说明一下?

.* 用于正则匹配resourceId.

所以 id:/image_button_cancel.* 意味着它将匹配任何以 id:/image_button_cancel[= 开头的 resourceId 27=]

例如,

id:/image_button_cancel_1

id:/image_button_cancel快捷

像这样...

这是一个正则表达式。点表示任何字符,星号表示零次或多次重复。

因此使用 btn="id:/image_button_cancel.*" 将匹配任何以“id:/image_button_cancel”开头的资源 ID。

示例(匹配的 ID):

id:/image_button_cancel
id:/image_button_cancel_action

示例(不匹配的 ID):

id:/cancel
id:/image_button

搜索正则表达式以更好地理解它。