使用Appium AndroidDriver获取当前应用程序包名称
有一种方法可以获取AndroidDriver中的当前活动:使用Appium AndroidDriver获取当前应用程序包名称,android,webdriver,appium,Android,Webdriver,Appium,有一种方法可以获取AndroidDriver中的当前活动: driver.currentActivity() 它返回类似.MainActivity的字符串,但不带包名。有没有办法单独获取完整的活动名称或应用程序包?您可以从代码中启动ADB命令,如: 亚行壳牌 cd数据/应用程序 ls 您可以从代码中启动ADB命令,如: 亚行壳牌 cd数据/应用程序 ls 不幸的是,这还不可能 因为Appium使用的是Selenium WebDriver,所以应该为此扩展/修改WD协议。不幸的是,这还不可能 由
driver.currentActivity()
它返回类似
.MainActivity
的字符串,但不带包名。有没有办法单独获取完整的活动名称或应用程序包?您可以从代码中启动ADB命令,如:
亚行壳牌
cd数据/应用程序
ls
您可以从代码中启动ADB命令,如: 亚行壳牌 cd数据/应用程序 ls
不幸的是,这还不可能
因为Appium使用的是Selenium WebDriver,所以应该为此扩展/修改WD协议。不幸的是,这还不可能
由于Appium使用的是Selenium WebDriver,因此应扩展/修改WD协议。此方法
driver.currentActivity()
可根据当前页面获取当前活动
使用.getCapabilities()
获取程序包名称和活动名称:
//return package name
driver.getCapabilities().getCapability("appPackage").toString();
//return activity name, as generic (not based on current page)
driver.getCapabilities().getCapability("appActivity").toString();
参考:此方法
driver.currentActivity()
基于当前页面获取当前活动
使用.getCapabilities()
获取程序包名称和活动名称:
//return package name
driver.getCapabilities().getCapability("appPackage").toString();
//return activity name, as generic (not based on current page)
driver.getCapabilities().getCapability("appActivity").toString();
参考资料:当您使用appium时,设备没有直接连接,因此您的解决方案无法工作您所说的“直接连接”是什么意思?这意味着我通过selenium grid提供了设备云,而当您使用appium时,appium设备没有直接连接,因此您的解决方案无法工作您所说的“直接连接”是什么意思这意味着我可以通过selenium grid和appium使用设备云