Issue in Launching safari in iphone (Real Device)

Hi

I have installed safari Launcher in my iPhone.

When i try launching the safari, its shows the below error in Appium Log.

Could you please guide me to resolve this issue.

Error :

iOS SDK Version set to 8.0,

Where its get configured. In code i am using 7.1.2

Log :

info: --> POST /wd/hub/session {“desiredCapabilities”:{“platformVersion”:“7.1”,“browserName”:“Safari”,“platformName”:“iOS”,“udid”:“318757c0a61a166603b7bec4bd9c11cf5bdb1e57”,“deviceName”:“iPhone”}}
info: [debug] Configuring Safari session

info: [debug] Using local .zip from command line: /Applications/Appium.app/Contents/Resources/node_modules/appium/build/SafariLauncher/SafariLauncher.zip
info: [debug] Copying local zip to tmp dir

info: [debug] /Applications/Appium.app/Contents/Resources/node_modules/appium/build/SafariLauncher/SafariLauncher.zip copied to /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11491-2216-2dwefv/appium-app.zip

info: [debug] Unzipping /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11491-2216-2dwefv/appium-app.zip

info: [debug] Testing zip archive: /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11491-2216-2dwefv/appium-app.zip

info: [debug] Zip archive tested clean

info: [debug] Unzip successful

info: [debug] Using locally extracted app: /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11491-2216-2dwefv/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app

info: [debug] Creating new appium session c9f61d39-f0c5-46e0-a6b5-567bda3f85cc

info: [debug] Removing any remaining instruments sockets

info: [debug] Cleaned up instruments socket /tmp/instruments_sock

info: [debug] Setting Xcode folder

info: [debug] Setting Xcode version

info: [debug] Setting iOS SDK Version

info: [debug] iOS SDK Version set to 8.0

info: [debug] Detecting automation tracetemplate

info: [debug] Cleaning up appium session

info: [debug] Error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate
at null. (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios.js:740:14)
at /Applications/Appium.app/Contents/Resources/node_modules/appium/lib/helpers.js:490:9
at ChildProcess.exithandler (child_process.js:646:7)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:756:16)
at Socket. (child_process.js:969:11)
at Socket.emit (events.js:95:17)
at Pipe.close (net.js:465:12)
info: [debug] Responding to client with error: {“status”:33,“value”:{“message”:“A new session could not be created. (Original error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate)”,“origValue”:“Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate”},“sessionId”:null}
info: <-- POST /wd/hub/session 500 235.283 ms - 508

error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate

error: Failed to start an Appium session, err was: Error: Could not find Automation.tracetemplate in /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate

info: --> GET /wd/hub/status {}

info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}
info: <-- GET /wd/hub/status 200 4.037 ms - 104 {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}

info: --> GET /wd/hub/status {}

info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}

info: <-- GET /wd/hub/status 200 4.264 ms - 104 {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}

Hi,

My bet is that you are using xCode 6/IOS SDK 8.x.

If you are using a GA version of Appium (I.e. <= 1.2.3) it works on xcode 5.x IOS SQK 7.

I had the same problem, and downgrading to xCode 5.x solved the issue.

PS: Appium 1.3 will be working with IOS SDK 8.0, but it is still under beta.

I have deleted the Xcode 5.1, let me try downloading that 5.1.

But I am using iOS Deployement Target as “7.1” in build setting. Also my iphone has the same version as “7.1.2”

I have downgraded the Xcode and installed the safari Launcher.

My Code:

DesiredCapabilities capabilities = new DesiredCapabilities();
File app = new File("/Users/ebiztest/Documents/workspace/ControlCenter/iOSApplication/SafariLauncher.app");
/* Setup for Actual Device 8-29*/
capabilities.setCapability("browserName”,”safari”);
capabilities.setCapability("deviceName”,”iPhone”);
capabilities.setCapability(“platformVersion”,“7.1”);
capabilities.setCapability("platformName”,”iOS”);
capabilities.setCapability(“udid”,“318757c0a61a166603b7bec5ad9c11cf5bdb1e57”;
capabilities.setCapability(“app”,app.getAbsolutePath());

Getting an error as :

error: Could not parse plist file (as binary) at /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app/en.lproj/Localizable.strings
info: Will try to parse the plist file as XML
parseFileSync() is deprecated. Use parseStringSync() instead.
error: Could not parse plist file (as XML) at /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app/en.lproj/Localizable.strings
warn: Could not parse app Localizable.strings
info: [debug] Not setting locale because we’re using a real device

Appium Error Log : Complete Log

info: Appium REST http interface listener started on 127.0.01:4723
info: [debug] Non-default server args: {“address”:“127.0.01”,“defaultDevice”:true,“defaultCommandTimeout”:7200}
info: LogLevel: debug
info: --> GET /wd/hub/status {}
info: [debug] Responding to client with success: {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}
info: <-- GET /wd/hub/status 200 8.467 ms - 104 {“status”:0,“value”:{“build”:{“version”:“1.2.2”,“revision”:“cf6ff5939ddc6b4d45fcbabfbfe13c950e0058c4”}}}
info: --> POST /wd/hub/session {“desiredCapabilities”:{“app”:"/Users/ebiztest/Documents/workspace/ControlCenter/iOSApplication/SafariLauncher.app",“platformVersion”:“7.1”,“browserName”:“Safari”,“platformName”:“iOS”,“udid”:“318757c0a61a166603b7bec5ad9c11cf5bdb1e57”,“deviceName”:“iPhone”}}

info: [debug] Configuring Safari session
info: [debug] Using local .zip from desired caps: /Applications/Appium.app/Contents/Resources/node_modules/appium/build/SafariLauncher/SafariLauncher.zip
info: [debug] Copying local zip to tmp dir
info: [debug] /Applications/Appium.app/Contents/Resources/node_modules/appium/build/SafariLauncher/SafariLauncher.zip copied to /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/appium-app.zip
info: [debug] Unzipping /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/appium-app.zip
info: [debug] Testing zip archive: /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/appium-app.zip
info: [debug] Zip archive tested clean
info: [debug] Unzip successful
info: [debug] Using locally extracted app: /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app
info: [debug] Creating new appium session 5d2a2141-edce-4c0e-a81c-8f1b901e90c8
info: [debug] Removing any remaining instruments sockets
info: [debug] Cleaned up instruments socket /tmp/instruments_sock
info: [debug] Setting Xcode folder
info: [debug] Setting Xcode version
info: [debug] Setting iOS SDK Version
info: [debug] iOS SDK Version set to 7.1
info: [debug] Detecting automation tracetemplate
info: [debug] Not auto-detecting udid, running on sim

error: Could not parse plist file (as binary) at /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app/en.lproj/Localizable.strings
info: Will try to parse the plist file as XML
parseFileSync() is deprecated. Use parseStringSync() instead.
error: Could not parse plist file (as XML) at /var/folders/vj/k3615qdn2bq8qjyz7s32hdfr0000gn/T/11493-1796-gxn8cy/submodules/SafariLauncher/build/Release-iphoneos/SafariLauncher.app/en.lproj/Localizable.strings
warn: Could not parse app Localizable.strings
info: [debug] Not setting locale because we’re using a real device
info: [debug] Creating instruments
info: [debug] Preparing uiauto bootstrap
info: [debug] Dynamic bootstrap dir:
info: [debug] Dynamic env:
info: [debug] Dynamic bootstrap code:
info: [debug] Dynamic bootstrap path:
info: [debug] Reusing dynamic bootstrap:

error: iOS log capture failed: spawn ENOENT
info: [debug] Fixing device was changed from:"

info: [debug] Not setting iOS and app preferences since we’re on a real device
info: [debug] Starting iOS device log capture via deviceconsole
info: [debug] Cleaning up appium session
info: [debug] Error: spawn ENOENT
at errnoException (child_process.js:1001:11)
at Process.ChildProcess._handle.onexit (child_process.js:792:34)
info: [debug] Responding to client with error: {“status”:33,“value”:{“message”:“A new session could not be created. (Original error: spawn ENOENT)”,“code”:“ENOENT”,“errno”:“ENOENT”,“syscall”:“spawn”,“origValue”:“spawn ENOENT”},“sessionId”:null}

error: Failed to start an Appium session, err was: Error: spawn ENOENT
info: <-- POST /wd/hub/session 500 248.544 ms - 197
info: [debug] Not setting device type since we’re connected to a device
info: [debug] Getting bundle ID from app
info: [debug] Parsed app Info.plist (as binary)
info: [debug] Checking app install status using: /Applications/Appium.app/Contents/Resources/node_modules/appium/build/fruitstrap/fruitstrap isInstalled --id 318757c0a61a166603b7bec5ad9c11cf5bdb1e57 --bundle com.bytearc.SafariLauncher
info: --> GET /wd/hub/status {}