13 min read
Overview
Solana mobile apps are growing fast, fueled by the Seeker phone and Solana dApp Store, which give developers direct access to an audience of native crypto users. By learning to build and connect Solana apps for mobile now, you can ship faster and capture users early as the Solana mobile ecosystem expands.
In this guide, you’ll build a lightweight Solana Android app using React Native, Expo, Solana Kit, and Mobile Wallet Adapter (MWA) to connect a Mock Wallet, request an airdrop, and transfer SOL.
You’ll come away with a strong foundation in Solana mobile development that you can later expand into a complete production-ready app.
What You Will Do
- Set up Android Studio and an emulator
- Scaffold a React Native app with Expo
- Add Mobile Wallet Adapter (MWA) at the native Android layer
- Install and run the Mock Wallet for authorization and signing
- Build wallet flows: Connect → Balance → Airdrop → Send SOL
- Test end-to-end on the emulator
What You Will Need
This guide assumes familiarity with Solana programming, React, and TypeScript, as well as a general understanding of:
- Solana Fundamentals
- The Solana Mobile Stack
- How to Develop for Android
- Building apps with React Native
- Using the Expo CLI
| Dependency | Version |
|---|---|
| Android Studio | Narwhal 4 2025.1.4 |
| AVD (emulator) | Android 16, API 36.1 |
| Node | 24.8.0 |
| Expo | 54.0.13 |
| @solana/kit | 3.0.3 |
| Java JDK | 17 |
Install Android Studio
MWA uses Android’s native SDKs, so you’ll build with Android Studio and run on an emulator. If you don’t have it yet, install Android Studio and launch it.
React Native/Expo’s Android Gradle Plugin requires JDK 17:
- In Android Studio, open Settings/Preferences → Build, Execution, Deployment → Build Tools → Gradle
- In Gradle JDK options, select a JDK 17 installation. If JDK 17 isn’t listed, install it, then point Android Studio to that path.
- Set your shell to match Studio:
JAVA_HOME→ JDK 17 installation (Optional, but recommended) - Create an Android Virtual Device (AVD) in the Device Manager.
- Let Android Studio install any required SDKs/Build Tools and finish syncing.
Add PIN to the Emulator
To use the Mock Wallet, set a screen PIN so the device is secure and can approve sessions and signatures.
- Boot the emulator: Start your Android 16 (API 36) AVD (Medium Phone profile) from Android Studio.
- Set a screen lock (required): Open Settings → Security & privacy → Device Unlock -> Screen lock → set a PIN.
Install Mock Wallet
Mock Wallet lets you authorize and sign on Android without a production wallet.
Mock Wallet is not a secure, end-user wallet and should not be used in production or with real funds.
Clone the Repo:
git clone https://github.com/solana-mobile/mock-mwa-wallet.git
In Android Studio, open the mock-mwa-wallet/build.gradle file, let Gradle sync, then run it on an emulator.
Open Mock MWA Wallet on the emulator. When prompted inside the wallet, tap Authenticate to enable signing for development sessions.