gpt4 book ai didi

java - 如何使用 appium 处理已安装的应用程序?

转载 作者:太空狗 更新时间:2023-10-29 14:47:20 25 4
gpt4 key购买 nike

前提条件:已通过google play在设备中安装应用。

当我尝试自动化设备中已安装的应用程序时,每次它打开谷歌浏览器而不是打开应用程序时。

任何人都可以让我知道如何打开应用程序,我是 appium 中的新手。

代码如下:

public class appium {
private static AndroidDriver driver;
public static void main(String[] args) throws InterruptedException, IOException {

File appDir = new File("D:/setup/android-sdk_r24.4.1-windows/android-sdk-windows");
File app = new File(appDir, "ab.java.programming-1.apk");
System.out.println("app Dir.--->"+app);

DesiredCapabilities capabilities = new DesiredCapabilities();

// Name of mobile web browser to automate. It should be an empty string, as we are automation an app
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
// Name of the OS: Android, iOS or FirefoxOS
capabilities.setCapability("platformName", "Android");
// Device name: – I am using Galaxy
capabilities.setCapability("deviceName", "Galaxy");
// Mobile OS version – My device is running Android 4.4.4
capabilities.setCapability("platformVersion", "4.4.4");
// An absolute local path to the APK file
//capabilities.setCapability("app", app.getCanonicalPath());

// Java package of the tested Android app
capabilities.setCapability("appPackage", "ab.java.programming");

// An activity name for the Android activity you want to run from your package.
capabilities.setCapability("appActivity", ".MainActivity");

// Constructor to initialize driver object with new Url and Capabilities
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
Thread.sleep(10000);
driver.quit();

}

}

最佳答案

您需要设置指向 apk 所在位置的功能。

capabilities.setCapability("app", app.getAbsolutePath());

并且一定要在 appium 窗口中CHECK NO RESET 选项,这样它就不会重新安装 apk。

编辑:

以下是我在桌面上运行应用程序的方式。

        File app = new File("app location which is in the desktop"); //install
DesiredCapabilities capabilities = new DesiredCapabilities();

capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("deviceName", "LenovoB6000-HV");
capabilities.setCapability("platformVersion", "5.0.2");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appPackage", "package name");
capabilities.setCapability("appActivity", "Activity name");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
Thread.sleep(10000);//wait before closing the app
driver.quit();

关于java - 如何使用 appium 处理已安装的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38432723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com