Reset iOS Simulator application data to run app for first time
XcodeIos SimulatorXcode Problem Overview
I just finished writing some code that checks if it is the first time the app is running then display a message, if it is not the first time then display another message..
How do you reset the simulator on Xcode so that I can test the app when it runs the first time?
I tried cleaning the build folder but it didn't work..
Xcode Solutions
Solution 1 - Xcode
In the iOS Simulator, press iOS Simulator in the menu at the top of the screen, and press 'Reset Content and Settings...'. This will clear the entire simulator.
Or, on the home screen of the simulator, uninstall the app in the same way you would on a physical device, by pressing and holding on the application icon until an 'x' appears in the top left, and press the 'x', and select 'Delete' from the alert view. This will clear all data associated with a single app.
Then do a clean, build and run.
Edit:
As of Xcode 11+ Simulator, this is under Device > Erase All Content and Settings
Solution 2 - Xcode
The correct way to do this in XCode is: (Simulator must be shut down first)
xcrun simctl erase <device UDID>
or
xcrun simctl erase all
To find out the UDID use:
xcrun simctl list
Solution 3 - Xcode
Currently (Simulator Version 10.0), you can do it the following way:
Hardware > Erase All Content and Settings...
Solution 4 - Xcode
@Tim's answer is probably easier for interactive usage.
We use scripts for automated testing and delete the simulator's data directory to ensure it's clean. The simulator will re-create basic information when it restarts.
Delete the following:
~/Library/Application Support/iPhone Simulator/${simulator.version}
Solution 5 - Xcode
Don't really know if this is the best way but following is working for me:
first kill all working Simulators with
killall Simulator 2>&- && sleep 5 || true
afterwards reset all devices with
xcrun simctl erase all
ps.: I'm working with XCode 8