Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there any way to see the file system on the iOS simulator?

People also ask

How do I access iOS simulator files?

# Open application folder in Finder First, copy the path to the app folder from Xcode console. Then open Finder, click on Go -> Go to Folder and paste the application directory path. You will now be able to browse all the files in your application folder.

Where does the iPhone simulator store its data?

type: ~/Library/Application Support/iPhone Simulator.

How do you inspect iPhone simulator?

You'll need to go to Settings > Advanced and check the Show Debug Menu option. Then you'll see the option to open the web inspector for the Simulator right from that menu. With the Web Inspector open, you can debug inside the Simulator just like you could right in a desktop browser with DevTools.


UPDATE: Since iOS 8:

~/Library/Developer/CoreSimulator/Devices

The location used to be:

~/Library/Application Support/iPhone Simulator

It had directories for all models of simulators (4.0, 4.1, 5.0, etc) you have ever run, go to the one you are running from in Xcode.

Once in a folder, go to Applications, choose the Finder option that shows date for files, and sort by date. Your application will be the most recent since it just changed the directory...

Inside the directory is everything related to your application. You can even drop files in there between runs, to revert back to a stored database in a known state for example...

I go there often enough I keep the iPhone Simulator directory in my Finder sidebar.

Note that with iOS8, the simulator folders are in a totally different directory - really split across a few directories, with folder names for application specific files that change each time you run your app.


iOS 8

Devices

~/Library/Developer/CoreSimulator/Devices

Applications

~/Library/Developer/CoreSimulator/Devices/{{Device Code}}/data/Containers/Bundle/

Easy. Fast. Xcode 10+.

  1. Use print(NSHomeDirectory()) and copy the path.
  2. Open Finder app and press Shift+Cmd+G
  3. Paste the copied path and press GO

Alternative for 1. is to catch a breakpoint and do po NSHomeDirectory() in console.


Open the program "Activity Monitor", search for your App (just the apps name, not the simulator), click "Informations" and open "Open files and ports". Copy the second entry (something like /Users/me/Library/Application Support/iPhone Simulator/4.2/Applications/B97A9504-0FA5-4826-BB6D-A2335A676459/VSGradientView.app/YourApp). This is the running app, while <...>/B97A9504-0FA5-4826-BB6D-A2335A676459/VSGradientView.app/ is the bundle, and <...>/B97A9504-0FA5-4826-BB6D-A2335A676459/* the sand-boxed folder.

If you pass this as open "/Users/me/Library/Application Support/iPhone Simulator/4.2/Applications/B97A9504-0FA5-4826-BB6D-A2335A676459/" to the terminal, the folder will open in Finder.

Sounds complicated but isn't.


based on zsero answer

Details

macOS 10.13.1

Solution 1

Run the following line in the terminal

Template

open `xcrun simctl get_app_container booted BUNDLEID_OF_YOUR_APP data` -a Finder

Full Sample

open `xcrun simctl get_app_container booted com.Test data` -a 

BUNDLEID_OF_YOUR_APP ???

BUNDLEID_OF_YOUR_APP = "Bundle Identifier"

enter image description here

Features of the solution 1

  • open file to get app simulator directory

Solution 2

Create a bash scrip with a name of your app and code:

script_file_name = `basename "$0"`
open `xcrun simctl get_app_container booted $script_file_name data`

enter image description here

Features of the solution 2

  • open file to get app simulator directory
  • rename file to get another app simulator directory

Result

enter image description here