Appium驱动程序以编程方式获取应用程序包名称

Appium driver to get app package name programmatically

我正在使用:

appiumDriver.findElement(By.id("com.XXX.keyword:id/nextButton"));

但有时我们有调试版本,所以我们有类似 "com.XXX.keyword.debug" 的东西。所以我想在测试运行之前获取包名称,以便测试可以独立于此。

我试过了

driver.currentActivity()

但它只返回类似“.MainActivity”的内容

有什么方法可以用 Appium 获取包名吗?

非常感谢。

您不需要包名称来定位元素。只需复制没有包名称的粘贴 id。例如,在您的情况下,仅使用“nextButton”而不是“com.XXX.keyword:id/nextButton

要获取当前包名称,请使用以下方法:

driver.getCurrentPackage();

您使用的以下语句将为您提供 Activity 姓名。

driver.currentActivity();