This site is in read only mode. Please continue to browse, but replying, likes, and other actions are disabled for now.

Hi everyone, wasn’t sure where to put this but maybe someone will find it useful.

On a real device it is not possible to simply call driver.get(“url”), doing so will open SIRI and query with “url” often resulting in a search. Instead we can take advantage of Safari’s launch parameters and pass deep link URL as argument.

Below is sample code in Java:

String deepLinkURL = "deeplink://";
//it is necessary to first kill safari 
driver.executeScript("mobile: terminateApp", ImmutableMap.of("bundleId", "com.apple.mobilesafari"));

List args = new ArrayList();
args.add("-u");
args.add(deepLinkURL);

Map<String, Object> params = new HashMap<>();
params.put("bundleId", "com.apple.mobilesafari");
params.put("arguments", args);

driver().executeScript("mobile: launchApp", params);

driver.findElementByAccessibilityId("Open").click();