3

AndroidDriver and IOSDriver require to have DesiredCapabilities as input. Now, as this is deprecated how can I use these drivers?

My code example:

DesiredCapabilities cap = new DesiredCapabilities();

cap.SetCapability("deviceName", ConfigReader("DeviceID"));
cap.SetCapability("udid", ConfigReader("DeviceID"));
cap.SetCapability("platformName", "Android");
cap.SetCapability("systemPort", "SystemPort");
cap.SetCapability("language", ConfigReader("Language"));
cap.SetCapability("locale", ConfigReader("Language"));

IWebDriver driver = new AndroidDriver<AppiumWebElement>(new Uri(uri), cap);

Can I get real example of alternative to this considering DesiredCapabilities deprecation?

There is also a similar topic for android still without proper answer DesiredCapabilities for Selenium native android application obsolete

Ilja
  • 31
  • 2

1 Answers1

0

We can create a session by using AddAdditionalCapability http://appium.io/docs/en/commands/session/create/

AppiumOptions capabilities = new AppiumOptions();
appiumOptions.AddAdditionalCapability(MobileCapabilityType.PlatformName, "Android");
appiumOptions.AddAdditionalCapability(MobileCapabilityType.PlatformVersion, "7.1.1");
appiumOptions.AddAdditionalCapability(MobileCapabilityType.DeviceName, "Android Device");
appiumOptions.AddAdditionalCapability("appPackage", "com.instagram.android");
appiumOptions.AddAdditionalCapability("appActivity", "com.instagram.android.activity.MainTabActivity");

AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(new Uri("http://127.0.0.1:4723/wd/hub"), appiumOptions);