Use this
public IOSDriver initializeIOSDriver() {
IOSDriver driver = null;
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("udid", safeInit.deviceUDID);
capabilities.setCapability("platformVersion", safeInit.deviceOSVersion);
capabilities.setCapability("deviceName", safeInit.deviceName);
capabilities.setCapability("newCommandTimeout", 480000);
capabilities.setCapability("bundleId", safeInit.applicationPackageName);
capabilities.setCapability("autoDismissAlerts", true);
capabilities.setCapability("autoWebviewTimeout", 60000);
capabilities.setCapability("ignoreUnimportantViews", true);
capabilities.setCapability("resetKeyboard", true);
capabilities.setCapability("unicodeKeyboard", true);
logIOSDriverAPI.info("Loading the following IOS capabilities");
logIOSDriverAPI.info("deviceName " + safeInit.deviceName);
logIOSDriverAPI.info("device " + safeInit.deviceOSName);
logIOSDriverAPI.info("device version " + safeInit.deviceOSVersion);
logIOSDriverAPI
.info("Package name is " + safeInit.applicationPackageName);
try {
driver = new IOSDriver(new URL("http://" + safeInit.appiumNodeIP
+ ":" + safeInit.appiumNodePort + "/wd/hub"), capabilities);
iosDriver = driver;
GlobalParameters.getGlobalParams();
GlobalParameters.globalParamsMap.put("APPIUM_RUNNING","true");
} catch (Exception e) {
logIOSDriverAPI
.error("Exception occured while loading capabilities");
logIOSDriverAPI.error(e.getMessage());
logIOSDriverAPI.error(genCodes.getExceptionMessage(e));
driver = null;
GlobalParameters.getGlobalParams();
GlobalParameters.globalParamsMap.put("APPIUM_RUNNING","false");
}
logIOSDriverAPI.info("After loading capabilities");
return driver;
}