Skip to main content

Android

Android-specific notes for the React Native AliasVault app. This assumes a working Android dev setup (Android Studio, JDK 17, and the NDK installed via SDK Tools → NDK (Side by side)).

Test on a real device

To run in debug mode on a physical device, forward the Metro bundler port, otherwise you'll hit an Expo bundler error:

adb reverse tcp:8081 tcp:8081

Unit tests

The Android project has unit tests for the native Kotlin VaultStore, which handles vault encryption/decryption, owns the SQLite client, and proxies all queries from the React Native and autofill components.

./gradlew :app:testDebugUnitTest --tests "net.aliasvault.app.*"

You can also open the project in Android Studio and run/debug individual tests in VaultStoreTest.kt.

Linting

Linting runs automatically during a normal build; to run it manually:

./gradlew lintCheck # check
./gradlew lintFormat # auto-fix where possible