Test your app on mobile devices
On this page
If you're building an iOS or Android app, agents on your devboxes can build it and run it on cloud iPhone simulators and Android emulators. An agent can tap through the app to check its own work, and you can watch the same screen in the desktop app or use the app yourself. Devices are billed by the minute from your team's usage credits.
Turn on mobile devices
A team admin needs to turn on mobile devices once for the whole team. If you're a team admin:
- Open Billing on the boxes.dev website, or Settings → Billing & usage in the desktop app.
- Under Mobile devices, turn on the switch.
The first time your team turns devices on, it will get a one-time $10 credit to try them. If you aren't a team admin, ask one to turn devices on for your team.
Ask an agent to run your app
In a thread on a devbox, ask the agent to run your app on a device and tell it what to check. For example: "Build the iOS app, run it on an iPhone simulator, and make sure sign-in works." The agent will start the simulator, install your build, and tap through the app to check it. It can show you screenshots and short recordings in the thread, which you can also see in the mobile app.
Agents build iOS apps on a cloud Xcode builder and Android apps on a Gradle builder, so building an iPhone app doesn't need a Mac.
The agent should stop each device when it's finished. Devices also stop on their own:
- An iPhone simulator or Android emulator stops after 3 minutes without activity, or 30 minutes after it starts.
- A builder stops after 10 minutes without activity, or an hour after it starts.
- All of a devbox's devices stop when the devbox goes to sleep.
If you need a device for longer, ask the agent to raise its limits when it starts the device, up to 2 hours in total. A device you're watching in the Devices pane counts as active. Each devbox can run one device of each kind at a time, so an agent can test on an iPhone and an Android phone together.
Watch and use a device
In the desktop app, select the devbox's thread and open Devices from the titlebar. A dot on the button means a device is running. The pane shows the device's screen while the agent uses it.
- Select Interact to send your own clicks and typing to the device.
- Select Stop to stop the device.
- If the agent is running an iPhone simulator and an Android emulator, use the buttons at the top of the pane to switch between them.
- Builders have no screen to show. While one is running, a hammer icon appears at the top of the pane; open its menu to stop the builder.
Closing the pane won't stop a device, but the device will stop at its idle limit once nothing is using it.
Share your microphone or camera
If an app on the device starts using the microphone or camera, the pane will ask whether to share yours. Select Allow to share it until the device stops or you reload the window. macOS may also ask you to allow boxes.dev access. If you select Don't allow, the app will hear silence or see black frames. While the app is using your microphone or camera, the pane says so beside the device's name.
If macOS doesn't give boxes.dev access, turn it on in System Settings under Privacy & Security, then restart boxes.dev.
Prices and charges
| Device | Price |
|---|---|
| iPhone simulator | $0.10 a minute |
| Android emulator | $0.05 a minute |
| Xcode builder | Up to $0.10 a minute |
| Gradle builder | Up to $0.05 a minute |
Builders cost less while they aren't building. Every started minute counts as a full minute. While a device is running, the usage icon at the bottom of the desktop sidebar shows its run time and its cost so far.
Before an agent can start a device, your team's credits need to cover running it until its time limit. For example, an iPhone simulator with the default 30-minute limit needs $3 available. Your team will pay only for the minutes the device ran, and the charge will appear a few minutes after the device stops. Until then, its estimated cost is included in Pending device charges under Mobile devices in Billing. Team admins can also see each device's member, project, run time, and amount under Recent sessions.
If your team doesn't have enough credits, the agent will tell you. A team admin can buy credits or turn on auto-reload. Mobile devices work on every plan, and on paid plans they share credits with box-hour overage. On a trial, your team can use the one-time credit; to buy more credits, a team admin needs to choose a paid plan.
Turn off mobile devices
As a team admin, turn off the switch under Mobile devices in Billing. Running devices will stop within a couple of minutes, and agents won't be able to start new ones.