Built it with AI?
Test it on a real Android phone.
No Android phone on your desk? Rent a real one by the minute (Pixel 7a, Galaxy A16 and Galaxy A54) and drive it from your browser. Drop in your APK, press Quick test, and get a crash report written to paste back into Cursor, Claude Code, Lovable or whatever built the app.
Get an installable APK out of your tool.
Phones install .apk files. Most AI builders can produce one, but several default to a Play Store bundle (.aab) or to a build that only works next to your computer. Drop an .aab on the phone and it tells you how to get the .apk instead.
- Expo, Rork, Replit and Bolt mobile apps
- These are Expo (React Native) projects. Give a preview profile in eas.json "android": { "buildType": "apk" }, run eas build -p android --profile preview, and download the .apk from the build page. The default production profile makes an .aab.
- Expo development builds
- A development build loads its JavaScript from Metro on your computer, through adb reverse. A rented phone cannot reach your computer that way, so test a preview build and keep the development build for your own machine.
- Flutter and FlutterFlow
- Run flutter build apk (add --debug for a faster build). From FlutterFlow, download the code and build it the same way.
- Android Studio and Kotlin projects
- Build › Build App Bundle(s) / APK(s) › Build APK(s), or ./gradlew assembleDebug. The file lands in app/build/outputs/apk/.
- Lovable, Bolt, v0 and other web builders
- These make web apps. Wrap one with Capacitor to get an installable APK, or open the published URL in Chrome on the rented phone. That is one real phone, not a cross-browser test grid.
Drop it in, then press Quick test.
Rent a phone, open the Apps tab and drop the APK. It installs straight over ADB, after the phone's CPU is checked against the app's native libraries. Every app you install gets a Quick test button, and a test costs nothing beyond the rental minutes it uses: €0.10 a minute on the free plan.
- A cold start
- The app is stopped and launched fresh, and the launch time is measured the way Android measures it.
- About a minute of taps
- Android's monkey tool taps around inside your app. It stays inside: no swipes, no system keys, no rotation, and any attempt to open another app is refused.
- Crashes, freezes and errors
- Java and native crashes, ANRs (Android's "app isn't responding"), and the error lines your app logged, read from the phone's own logs.
- A verdict in plain words
- Passed, crashed, froze, closed or did not open, with a likely cause for the common ones: an Expo development build looking for Metro, an app calling localhost, plain HTTP blocked, a missing native library, code stripped by R8.
Paste the crash back into your AI.
One click copies a fix prompt: the stack trace, the phone model and Android version, the app version, how it was tested and the likely cause. Paste it into Cursor, Claude Code, Lovable, Bolt or Replit and ask for the fix. Build again, drop the new APK, test again. The same report downloads as Markdown for your issue tracker.
Let DeviceyAI use it like a first-time user.
Quick test taps at random. DeviceyAI, the agent built into every session, reads the screen and uses the app on purpose: it opens screens, fills in forms, checks the logs after each step and writes a bug report with steps to reproduce. "Ask DeviceyAI to explore it" puts that instruction in its box for you, and nothing runs until you press Send. Every account gets 25 AI credits to try it.
Or drive the phone from your laptop.
npx devicerent-connect, with an API key from your account page, makes the rented phone show up in adb devices on your machine. Android Studio, gradle, Flutter and Appium then talk to it as if it were plugged in, and so can a coding agent that drives Android through adb.
Where this will not help yet.
Current facts, not roadmap. Better to know before you plan your testing around it.
- Hot reload. Metro, Expo Go and development builds reach your computer through adb reverse, which the bridge does not carry. Test a standalone APK.
- iOS. There is none, and none is planned.
- Maestro and Detox flows. Espresso, Appium and anything that speaks plain adb are supported.
- Meeting Google Play's closed-testing tester requirement. Rented phones are for testing your app, not for standing in as testers.
- Safari, iPhone or iPad as the browser you drive the session from. Live sessions need Chrome, Edge, Brave or Opera on a computer.
- Root. Every phone has a locked bootloader and no su binary.
- A wide device matrix. The rack is six Pixel 7a, one Galaxy A16 and one Galaxy A54.
Questions
- I don't own an Android phone. Can I still test my app?
- Yes, that is who this is for. The phone is real and you drive it from your browser: a live screen you can touch, an ADB shell, logcat and an Apps tab to install your build. You need Chrome, Edge, Brave or Opera on a computer.
- What does a Quick test cost?
- Nothing on top of the rental. It takes about two minutes of session time, so roughly €0.20 at the free-plan rate of €0.10 a minute, and less on a paid plan.
- Why won't my .aab install?
- An .aab (Android App Bundle) is the format the Play Store takes; phones install .apk files. In Expo, give a preview profile "android": { "buildType": "apk" } in eas.json. In Flutter, run flutter build apk. In Android Studio, use Build APK(s).
- My Expo app shows a red screen about Metro or "Unable to load script". Why?
- That is a development build looking for the Metro server on your computer, which a rented phone cannot reach because adb reverse is not available. Build a preview APK with EAS and test that instead.
- Does a Quick test replace real tests?
- No. It catches crashes on launch and under random taps, the most common way an AI-built app breaks on a real phone, in a couple of minutes with no setup. For flows that must keep working, ask DeviceyAI to write an Espresso or Appium test, or bring your own and run it from the Automation tab.
- Can my coding agent use the phone directly?
- Through adb, yes. npx devicerent-connect with an API key from your account page makes the rented phone appear in adb devices on your machine, so tools and agents that drive Android through adb can use it. Anything that depends on adb reverse will not work.
- Is my app left on the phone after I finish?
- No. Every phone is wiped between renters, and a phone with no wipe on record cannot be rented again.