KAN-53: Add Android app and platform integration #149

Merged
Twyco merged 1 commits from feature/KAN-53-android-app-platform into main 2026-09-26 18:46:19 +00:00
Owner

KAN-53 adds the Android development app on top of KAN-52. The Android shell loads the existing Vue/Inertia application from the selected HTTPS server and keeps native launcher actions separate from remote content.

The platform integration handles system back navigation, keyboard and system-bar insets, background/resume, server selection, connection recovery, and clearing cookies/storage when switching installations. The Android project and Gradle wrapper are tracked; SDK auto-installation is disabled and build tools are pinned to the installed version. The requested missing-SDK working agreement is recorded in AGENTS.md and was also saved globally on the development machine.

Validation:

  • ARM64 Android debug APK built with Java 21, Android SDK/build tools 36 and Gradle 8.14.3.
  • Native launcher JavaScript tests (4) and Rust tests (7); Rust formatting and Clippy; ESLint for changed JavaScript.
  • Android navigation policy unit tests (3), Android instrumentation test (1: server frontend, native bridge isolation, form retention on resume/back and session clearing), Android lint (0 errors; 15 warnings).
  • Existing login and two-factor PHPUnit tests (14 tests, 84 assertions).
  • Manual Android acceptance confirmed by the user.

The instrumentation test uses a real pointer gesture for history navigation and reports results before Tauri's activity teardown exits the process. It requires network access to the public server frontend; no login credentials are embedded.

Base: feature/KAN-52-server-sessions-connection-errors (dependent PR).

KAN-53 adds the Android development app on top of KAN-52. The Android shell loads the existing Vue/Inertia application from the selected HTTPS server and keeps native launcher actions separate from remote content. The platform integration handles system back navigation, keyboard and system-bar insets, background/resume, server selection, connection recovery, and clearing cookies/storage when switching installations. The Android project and Gradle wrapper are tracked; SDK auto-installation is disabled and build tools are pinned to the installed version. The requested missing-SDK working agreement is recorded in AGENTS.md and was also saved globally on the development machine. Validation: - ARM64 Android debug APK built with Java 21, Android SDK/build tools 36 and Gradle 8.14.3. - Native launcher JavaScript tests (4) and Rust tests (7); Rust formatting and Clippy; ESLint for changed JavaScript. - Android navigation policy unit tests (3), Android instrumentation test (1: server frontend, native bridge isolation, form retention on resume/back and session clearing), Android lint (0 errors; 15 warnings). - Existing login and two-factor PHPUnit tests (14 tests, 84 assertions). - Manual Android acceptance confirmed by the user. The instrumentation test uses a real pointer gesture for history navigation and reports results before Tauri's activity teardown exits the process. It requires network access to the public server frontend; no login credentials are embedded. Base: feature/KAN-52-server-sessions-connection-errors (dependent PR).
Twyco changed target branch from feature/KAN-52-server-sessions-connection-errors to main 2026-09-26 18:44:49 +00:00
Twyco added 1 commit 2026-09-26 18:46:04 +00:00
feat(KAN-53): add Android app and platform integration
CI/CD / preconditions (pull_request) Successful in 2s
CI/CD / test_and_check_app (pull_request) Successful in 6m22s
CI/CD / Publish immutable image (pull_request) Skipped
32dac91620
Twyco force-pushed feature/KAN-53-android-app-platform from 508c39dd2d to 32dac91620 2026-09-26 18:46:04 +00:00 Compare
Twyco merged commit 859229fa21 into main 2026-09-26 18:46:19 +00:00
Twyco deleted branch feature/KAN-53-android-app-platform 2026-09-26 18:46:19 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: PetschStudios/KanbanGit#149