Hero Background

Next-Gen App & Browser Testing Cloud

Trusted by 2 Mn+ QAs & Devs to accelerate their release cycles

Next-Gen App & Browser Testing Cloud

How to configure simulators settings?

You configure a simulator by opening its settings or configuration interface and adjusting the device profile, OS version, and runtime parameters. In the iOS Simulator you choose a device and iOS runtime in Xcode, then set location, appearance, and network from the menus. In the Android Emulator you create a virtual device in the Device Manager and tune RAM, storage, resolution, and network in the AVD settings and extended controls.

Understanding Simulator Configuration

Simulators are software programs that imitate real-world devices so you can run and test apps without physical hardware. Their behavior is controlled either through a graphical settings interface inside the tool, or through configuration files and command-line flags read when the simulator launches. The exact options differ by platform, but the common parameters are the same everywhere: the device profile (model and screen), the operating system version, and runtime conditions such as network, GPS location, and locale.

Before diving in, it helps to know the distinction: on iOS you work with a Simulator that mimics the software environment, while on Android you work with an Emulator that reproduces device hardware including the CPU architecture. That difference is why Android emulators are heavier but often closer to real device behavior.

Configure the iOS Simulator (Recommended for iOS)

The iOS Simulator ships with Xcode. To configure it:

  • Open Xcode > Settings > Platforms and download the iOS runtime version you want to test.
  • Launch the Simulator from Xcode > Open Developer Tools > Simulator.
  • Pick a device model from File > Open Simulator or the top device menu (iPhone, iPad, and OS pairings).
  • Use the Features menu to set location (for GPS testing), toggle appearance between Light and Dark mode, and simulate Face ID or Touch ID.
  • Add or remove devices from Window > Devices and Simulators to build a matrix of models and OS versions.
  • Adjust scale and bezel from the Window menu so the simulator fits your screen.

Configure the Android Emulator

The Android Emulator is managed through Android Studio's Device Manager:

  • Open the Device Manager and click Create Virtual Device.
  • Choose a hardware profile (a ready-made preset like Pixel 8, or a custom profile).
  • Select and download the system image for the Android version and API level you need.
  • Open Advanced Settings to set RAM, internal storage, SD card size, and the graphics mode (hardware or software).
  • Enable hardware acceleration (Hypervisor Framework on macOS, or the Android Emulator hypervisor on Windows) for faster performance.
  • After launch, use the extended controls (the three-dot toolbar) to simulate GPS location, network speed, battery level, incoming calls, and sensors.
  • Click Finish to save, and your configured virtual device is ready to run.

Configure Simulators from the Command Line

For CI pipelines and repeatable setups, both platforms expose command-line tools. This is the most reliable way to configure simulators identically across machines:

# iOS: list, create, and boot a simulator
xcrun simctl list devices
xcrun simctl create "iPhone 15 Pro" "iPhone 15 Pro" "iOS17.5"
xcrun simctl boot "iPhone 15 Pro"

# iOS: set a GPS location and dark appearance
xcrun simctl location "iPhone 15 Pro" set 37.7749,-122.4194
xcrun simctl ui "iPhone 15 Pro" appearance dark

# Android: create an AVD, then launch with custom settings
avdmanager create avd -n Pixel_8_API_34 -k "system-images;android-34;google_apis;x86_64" -d pixel_8
emulator -avd Pixel_8_API_34 -memory 2048 -netspeed lte -no-snapshot

Scripting configuration this way keeps every test run consistent and removes manual clicks from your build. If you only need Android specifics, see the sibling guide on how to configure emulator settings.

Common Mistakes and Troubleshooting

  • Skipping hardware acceleration: Without HAXM/Hypervisor, Android emulators crawl. Enable virtualization in the BIOS and install the hypervisor driver.
  • Wrong system image architecture: On Apple Silicon use arm64 images; x86 images may fail to boot or run slowly under translation.
  • Under-allocating RAM: Too little memory causes ANRs and app crashes that do not happen on real devices. Match RAM to the device you are emulating.
  • Forgetting to download the runtime: A missing iOS runtime or Android system image means the device simply will not appear in the list.
  • Trusting the simulator for final sign-off: Sensors, cameras, biometrics, push notifications, and real network conditions are not fully reproduced. Always confirm on real hardware.

Beyond Simulators: Testing on Real Devices

Configuring simulators well gets you fast, cheap early feedback, but they cannot reproduce true GPU rendering, battery behavior, camera input, biometric sensors, or carrier networks. That is why teams pair virtual devices with real ones for release validation. With TestMu AI you can run your app on 3000+ real browsers and devices, including a large fleet of real iOS and Android phones across many OS versions, without maintaining a physical device lab.

This lets you develop against configured simulators, then reproduce and confirm fixes on the exact real device and OS a user reported. Explore real device cloud and mobile app testing to see how virtual and real-device testing fit together.

Conclusion

Configuring simulator settings comes down to three layers: choose the right device profile and OS version, tune runtime parameters like RAM, network, GPS, and appearance, and, where possible, script that configuration through xcrun simctl or avdmanager for consistency. Use simulators for fast iteration, then validate on real devices so hardware-specific issues never reach your users.

Frequently Asked Questions

How do I configure the iOS Simulator in Xcode?

Open Xcode, go to Settings then Platforms to download the iOS runtime you need, then launch Xcode > Open Developer Tools > Simulator. Use the Device and Features menus to pick a model and set location, network, and appearance, and add more devices via Window > Devices and Simulators.

How do I change Android Emulator settings in Android Studio?

Open the Device Manager, click Create Virtual Device, choose a hardware profile and system image, then use Advanced Settings to set RAM, storage, and graphics. Once the emulator is running, the extended controls let you change GPS, network speed, and battery level.

Can I configure simulators from the command line?

Yes. On iOS, xcrun simctl creates, boots, and configures simulators, including setting location and appearance. On Android, avdmanager and the emulator binary create and launch AVDs with custom RAM, resolution, and network flags, which is ideal for CI pipelines.

What is the difference between a simulator and an emulator?

A simulator (iOS) mimics the software environment and runs apps compiled for the host machine, while an emulator (Android) reproduces the full device hardware including the CPU architecture. Emulators are heavier to run but behave closer to real hardware than simulators.

Why do apps behave differently on simulators than on real devices?

Simulators and emulators cannot fully reproduce real hardware factors such as true GPU performance, battery drain, camera, biometric sensors, push notifications, or carrier network conditions. Final validation should always happen on real devices to catch issues virtual devices miss.

How do I add more device profiles or OS versions?

On iOS, download additional runtimes in Xcode > Settings > Platforms and add devices in Devices and Simulators. On Android, download more system images through the SDK Manager, then create a new virtual device for each API level in the Device Manager.

Related Questions

Test Your Website on 3000+ Browsers

Get 100 minutes of automation test minutes FREE!!

Test Now...

KaneAI - Testing Assistant

World’s first AI-Native E2E testing agent.

...

TestMu AI forEnterprise

Get access to solutions built on Enterprise
grade security, privacy, & compliance

  • Advanced access controls
  • Advanced data retention rules
  • Advanced Local Testing
  • Premium Support options
  • Early access to beta features
  • Private Slack Channel
  • Unlimited Manual Accessibility DevTools Tests