XDAetherium is an Android launcher for running Minecraft: Java Edition on phones and tablets. It is based on Amethyst/PojavLauncher/Boardwalk and includes custom changes for a smaller APK, Ely.by accounts, working Ely.by skins, custom branding, and Android Java runtime fixes.
This project is not affiliated with Mojang, Microsoft, or Ely.by. Use your own account and follow the rules of the corresponding services.
- Run Minecraft: Java Edition on Android.
- Microsoft account support from the upstream launcher.
- Offline/local account support.
- Ely.by Account support:
- login by username/e-mail and password;
- 2FA code support;
- token refresh;
- registration through
account.ely.by; - Ely.by skins in-game through
authlib-injector; - Ely.by skin head in the main menu.
- Forge/Fabric/OptiFine and vanilla Minecraft support.
- Automatic Java runtime selection and installation before launch.
- Fixes for legacy Java 8 / Java 17+ / Java 21 runtime handling.
- OptiFine manifest fallback fix.
- Smaller APK: only
arm64-v8aandarmeabi-v7a, without x86/x86_64. - Custom XDAetherium name, icons, and default profile icon.
- Forced Russian language option.
- Custom control actions: Cancel and Exit.
- Download cancellation by long-pressing the download row/progress bar.
- Removed extra upstream wiki/Discord author links.
The current local debug build was tested on an Android 12 device:
- debug package:
org.angelauramc.amethyst.debug - versionName:
LOCAL-20260510 - debug APK size: about
82 MB - ABI:
arm64-v8a,armeabi-v7a - no x86/x86_64 libraries in the APK
- JDK compatible with this project's Android Gradle Plugin.
- Android SDK.
- Android NDK
27.3.13750724or a compatible installed NDK. - Internet connection for Gradle dependencies and Minecraft game files.
gradlew.bat :app_pojavlauncher:assembleDebug --console=plain./gradlew :app_pojavlauncher:assembleDebug --console=plainThe debug APK will be created at:
app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apk
Release build:
./gradlew :app_pojavlauncher:assembleRelease --console=plainOn Windows, use gradlew.bat instead of ./gradlew.
adb install -r app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apkFor a specific device:
adb -s <device_id> install -r app_pojavlauncher/build/outputs/apk/debug/app_pojavlauncher-debug.apkXDAetherium adds a dedicated Ely.by Account login method.
How it works:
- The launcher authenticates through Ely.by's Yggdrasil-compatible API.
- The account is saved as a normal launcher Minecraft profile.
- For Ely.by accounts, the launcher adds
authlib-injectoras a Java agent when starting the game. - Minecraft receives session/profile/textures through Ely.by, so Ely.by skins work in-game.
- For the main menu, the launcher separately downloads the Ely.by skin PNG, crops the face and overlay layer, and caches it as the profile head.
If the menu skin does not update immediately, restart the launcher or reselect the Ely.by account.
The build is configured for ARM devices:
abiFilters "arm64-v8a", "armeabi-v7a"This reduces APK size and removes unused x86/x86_64 libraries. If x86/x86_64 support is needed, the ABI filters and LWJGL assets must be restored separately.
Before publishing a public repository:
- Do not publish signing credentials or keystore passwords. Keep them in environment variables,
local.properties, or another local file ignored by Git. - Do not commit
local.properties, build logs, temporary APKs, keystores, or personal files. - Keep the original
LICENSEand attribution. - State that this project is a fork/modification of Amethyst/PojavLauncher/Boardwalk.
- If you publish an APK release, publish the matching source code for that release.
Release signing values can be provided through environment variables or local.properties:
xdaetherium.release.storeFile=release.jks
xdaetherium.release.storePassword=...
xdaetherium.release.keyAlias=...
xdaetherium.release.keyPassword=...Equivalent environment variables:
XDAETHERIUM_RELEASE_STORE_FILE
XDAETHERIUM_RELEASE_STORE_PASSWORD
XDAETHERIUM_RELEASE_KEY_ALIAS
XDAETHERIUM_RELEASE_KEY_PASSWORD
The main project is distributed under GNU LGPLv3 — see LICENSE.
This project also uses components under other free software licenses. In particular, the included authlib-injector component is distributed under GNU AGPLv3 and is used as a separate Java agent component.
This project is based on work from:
- Amethyst Android
- PojavLauncher
- Boardwalk
- authlib-injector
- Ely.by API and skin system
- LWJGL, OpenJDK, SDL, GL4ES, MobileGlues, Mesa, and other dependencies used by the upstream project
Thanks to all upstream authors and library maintainers.
