System Requirements
Android 5.0 Lollipop or higher is required to run Dolphin.
Hardware Requirements
- Processor: 64-bit processor (ARMv8 or x86-64)
- Graphics: OpenGL ES 3.0 or higher (standard desktop OpenGL features recommended for best performance)
Performance Considerations
Performance varies heavily with driver quality. See the Dolphin and OpenGL Drivers article for more information.Development Prerequisites
1
Install Android Studio
Download and install Android Studio with default options.Android Studio will automatically download required SDK components and tooling when you open the project.
2
Clone the Repository
Clone the Dolphin repository and initialize submodules:
Building with Android Studio
1
Open Project
Open the
Source/Android project in Android Studio.Let any background tasks finish. Android Studio will automatically:- Download required SDK components
- Download build tools and dependencies
- Sync Gradle files
2
Wait for Sync
Wait for Gradle sync and background tasks to complete.You can monitor progress in the bottom status bar.
3
Build the App
Use one of these methods to build:
- Build APK
- Run on Device
- Run on Emulator
- Use the hammer icon or Build > Assemble ‘app’ Run Configuration
- Choose Build > Generate App Bundles or APKs > Generate APKs
- APK will be created in
Source/Android/app/build/outputs/apk
Build System Overview
Dolphin’s Android app uses a dual build system:Gradle
Compiles the Java/Kotlin Android application code.
CMake
Compiles Dolphin’s native C++ component.
The Gradle script automatically runs CMake builds when building the Java code. You don’t need to invoke CMake manually.
Code Style Configuration
The project maintains a custom IntelliJ/Android Studio style file for consistent Java and Kotlin formatting.1
Open Settings
Navigate to File > Settings > Editor > Code Style(On macOS: Android Studio > Settings > Editor > Code Style)
2
Import Scheme
- Click the gear icon
- Choose Import Scheme
- Select
Source/Android/code-style-java.xmlfrom the repository
3
Select Scheme
Ensure that Dolphin-Java is selected as the active code style scheme.
Format Code Before Committing
Before submitting a pull request, reformat any Java or Kotlin files you modified:Re-run formatting after edits to keep spacing, imports, and wrapping consistent with the rest of the project.
Command-Line Building
For command-line users or CI/CD pipelines:1
Navigate to Android directory
2
Run Gradle tasks
Execute any Gradle task using the wrapper:
Windows Users
On Windows, usegradlew.bat instead of ./gradlew:
Project Structure
Key directories inSource/Android:
Troubleshooting
Gradle sync fails
Gradle sync fails
- Ensure you have a stable internet connection
- Click File > Invalidate Caches and Restart
- Delete
.gradlefolder and sync again:
CMake build fails
CMake build fails
Ensure submodules are initialized:Check that NDK is installed in Android Studio:
- Tools > SDK Manager > SDK Tools
- Check NDK (Side by side)
Build fails with submodule errors
Build fails with submodule errors
Ensure you’ve initialized and updated all submodules:
Device not detected
Device not detected
- Enable Developer Options on your Android device:
- Go to Settings > About Phone
- Tap Build Number 7 times
- Enable USB Debugging in Developer Options
- Connect device and accept the debugging prompt
- Verify connection:
Installation fails on device
Installation fails on device
Your device may not meet the minimum requirements:
- Android 5.0+ required
- 64-bit processor required (ARMv8 or x86-64)
- OpenGL ES 3.0+ support required
Slow build times
Slow build times
- Enable Gradle daemon (usually enabled by default)
- Increase Gradle memory in
gradle.properties:
- Use parallel builds:
Testing on Devices
Physical devices are strongly recommended for testing Dolphin. Emulator performance is typically insufficient for GameCube/Wii emulation.
Recommended Test Devices
- Recent flagship devices (Snapdragon 8 series, Google Tensor, etc.)
- Devices with good OpenGL ES driver support
- At least 4GB RAM recommended
Performance Tips
Use Release Builds
Debug builds are significantly slower. Always test performance with release builds.
Check Driver Support
Performance varies heavily with GPU driver quality. See the driver quality article for details.
Test on Real Hardware
Android emulators cannot accurately represent Dolphin performance. Always test on physical devices.
Monitor Thermal Throttling
GameCube/Wii emulation is demanding. Monitor device temperature during extended testing.
Contributing
When contributing to Dolphin Android:- Follow the code style by importing
code-style-java.xml - Reformat code before committing
- Test on multiple devices if possible
- Ensure both debug and release builds work
- Update submodules when necessary