I want to launch the browser in iOS Simulator from the Terminal with specified URL.

Is there any command for it? So that I can write in a script which will take URL as argument and launch simulator with browser and URL open on it.


/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app/Contents/MacOS/iPhone\ Simulator -SimulateApplication /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/Applications/MobileSafari.app/MobileSafari -u "http://google.com/"

Yes this really is one long command — make sure to run it all. Replace google.com with actual website, and iPhoneSimulator7.0.sdk with the relevant version of the simulator that you're using.

| improve this answer | |
  • 1
    You can easily pass in the target website if you replace "http://google.com" with "$*", and you save this as a shell script (e.g. ~/launch_ios_browser.sh, then chmod 700 the file). Then you can go to localhost using ~/launch_ios_browser.sh http://apple.com – Brad Parks Apr 16 '14 at 9:53
  • @grgarside Any idea how to do this in the latest Xcode with the iOS Simulator? – Stoutie Sep 26 '14 at 17:22

On Xcode6 simctl was introduced so you can just open the terminal and type:

xcrun simctl openurl booted "https://google.com"

| improve this answer | |

The path has changed for Xcode 6.0 (OS X Yosemite) and now it's:

alias simulator='open /Applications/Xcode.app/Contents/Developer/Applications/iOS\ Simulator.app'

| improve this answer | |

Another way to do it is to use a temp file that redirects to the URL you want, then opening this file in the simulator. This isn't necessarily the best way, but it is a shorter command.

echo "<meta http-equiv="refresh" content='0;url=http://apple.stackexchange.com'>" > ~/tmp/openURL.html; open ~/tmp/openURL.html -a /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app/

As in the other answers, you can replace the URL (I put apple.stackexchange.com) with whatever you want. Just make sure you put http:// because open interprets arguments as filesystem paths by default.

Sadly, the bulk of the command is just the path to the iPhone Simulator bundle.

| improve this answer | |
osascript -e "tell application \"iPhone Simulator\" to activate"
| improve this answer | |
  • 1
    This does start the Simulator, but how does it start the browser inside the simulator as well? – nohillside Jun 23 '14 at 16:59

Here's what to do : Go to Finder and run /Applications/Utilities/Terminal, and paste in the following code:

open /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone\ Simulator.app

That should help if you use XCODE, or a iOS Simulator.

| improve this answer | |
  • This doesn't open to the browser, let alone a specified URL. – grg Jan 13 '14 at 21:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .