Nobody has done this on Android yet. Two iPhones have, four times, and those transactions are on chain. You would be the first. A run that fails is still a real result, so send that in too.
What you need
Testing a mesh needs two Android phones. One alone has nobody to hand a payment to, for the reason set out in how it works.
- Two Android phones, both on Android 12 or newer
- The APK installed on both. No account, no registration, no device limit
- A small amount of real NIM on the sending phone. A few coins is plenty
- Bluetooth on, both phones, and the app open in the foreground on both
This is real mainnet money. There is no test mode. Send amounts you would not mind losing.
The test that proves it
- Install on both phones. Open the download page on each and tap through. Android warns about installing from a browser the first time. That is about sideloading in general, not this file.
- Open the app on both and leave it in the foreground. Keep both screens awake for the first run. Background relaying is one of the things being tested, so take it out of the equation to start with.
- Put phone A in airplane mode, then switch Bluetooth back on. Airplane mode turns Bluetooth off with everything else, so you have to re-enable it. This is the step people miss.
- Leave phone B online. It is the gateway. Wi-Fi or cellular, either works.
- Wait for both to say meshed. The status line at the bottom of the home screen tells you when they have found each other.
- Send from phone A. Any amount, to any address. Phone A has no internet at all.
- Watch it settle. The payment crosses to phone B over Bluetooth, phone B broadcasts it, and a receipt travels back. Phone A flips from pending to settled without ever having a connection.
Then look the transaction up on a block explorer. It is an ordinary Nimiq transaction and it will be sitting there like any other.
When it does not work
Both phones say searching forever
Usually one phone went to sleep or got backgrounded. Wake both, keep the app on screen, and give it a few seconds.
The sending phone never leaves pending
Check the receiving phone actually has internet. The mesh can carry a payment perfectly and still have nowhere to hand it off.
Nothing happens at all in airplane mode
Check Bluetooth is genuinely back on. Airplane mode disables it, and the app cannot mesh without it.
You denied the Bluetooth permission
Android will not ask twice. Go to the app's settings, into permissions, and grant Nearby devices by hand. Without it the app runs but can neither see nor be seen.
It stops when a screen locks
The app runs a foreground service so the radio survives a locked screen. But manufacturers layer their own battery saving on top of Android's, and some kill it anyway.
What is worth reporting
Anything that surprised you is worth knowing about, but these are the most useful:
- A payment that never settled, with roughly how long you waited
- A status line that said one thing while the app did another
- Anything that made you unsure whether your money was safe
- The make and model of both phones, especially if they never found each other
- The moment you first got confused, whatever it was
That last one matters more than it sounds. Most of what is wrong with an alpha is not a crash, it is a screen that assumed you already knew how the thing worked.
How to tell us
Use the Help button inside the app, on the wallet screen. It picks up the errors and failed requests behind whatever you were looking at, which is usually the half that explains what went wrong.
Or just email it. hello@nimiq.tech, with the make and model of both phones and what you saw on screen.