Files
deltazefiro c813831e3e chore: Bump build tooling to Java 21 (#250)
Align local and CI JDK requirements with F-Droid's Java 21 environment to keep builds consistent and avoid tooling mismatch.
2026-02-25 22:27:01 +08:00

1.8 KiB

Amarok

Amarok is a lightweight Android app that hides files and applications for casual privacy needs. Instead of encryption, it manages file and app visibility using various techniques.

Project Overview

See @.cursor/rules/overview.mdc

Build

Requires JDK 21+:

./gradlew assemble  # Build APKs
# Output: app/build/outputs/apk/{flavor}/{debug|release}/Amarok-v{version}+{commit}-{flavor}.apk
# Example (foss debug): app/build/outputs/apk/foss/debug/Amarok-v0.10.0+caa1716-foss.apk

Note: ./gradlew build includes lint checks (mostly missing translations warnings), use assemble instead.

E2E Test

  1. Launch AVD (if not already running) Check if device running with mcp mobile_list_available_devices (more reliable than adb devices). If not, start AVD with:
    emulator -avd android_16_avd -no-window -no-audio -no-boot-anim -gpu swiftshader_indirect
    # Runs in background, wait ~30s until "mobile_list_available_devices" shows "emulator-*"
    
  2. Install the latest build of the app with adb.
  3. Spawn agent mobile-e2e-tester to test the app.
    • Package name: Use deltazero.amarok.foss for FOSS flavor builds (not deltazero.amarok)
    • Note: Each agent invocation should test one simple, focused task. For complex test plans, decompose into multiple simple tasks and run agents sequentially. The agent only test user-facing behavior (black-box approach).

Agent Rules

  • Update @.cursor/rules/overview.mdc to reflect structural changes. Keep it as a concise index.
  • Modify @.claude/settings.local.json for permission updates. A restart of Claude Code is required to take effect.
  • For temporary files, always use ./tmp folder under project root to avoid sandbox permission issues. Do not use /tmp or other system temp directories.