Build and run the app on Android

The editor's fork moves to keyboard_height_plugin v0.3.0 (83bdb2a3): v0.1.5
compiled against API 31, while the AndroidX libraries of Flutter v3.47 need
34, so Gradle's AAR metadata check failed. Release builds get the internet
permission, which Flutter's template grants to debug and profile builds
only. Gradle's own build folder in android/ (its problems report) is
ignored. AGENTS.md: the server's test/integration/test_tools/ is generated
too, so test files are formatted one by one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-10-02 19:52:22 +02:00
commit 79bc2fc618
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
5 changed files with 11 additions and 6 deletions

View file

@ -34,7 +34,7 @@ Only when the server cannot be started at all, fall back to the CLI in the serve
Tests need no Docker. `config/test.yaml` sets `database.dataPath`, so Serverpod starts and manages the test database (an embedded PostgreSQL) itself. Just run `dart test` in the server package. Tests need no Docker. `config/test.yaml` sets `database.dataPath`, so Serverpod starts and manages the test database (an embedded PostgreSQL) itself. Just run `dart test` in the server package.
Tooling traps: rules of `leancode_lint`'s analyzer plugin are ignored with its prefix (`// ignore: leancode_lint/missing_equatable_props`); `dart fix --apply` moves `flutter_driver` into the app's `dependencies` (as `any`) on every run, so restore it as a dev dependency (`sdk: flutter`) afterwards; never `dart format` generated code, only the hand-written paths, as `tool/check.sh` does; and never rebase or check out other commits while `serverpod start` runs: its watcher regenerates code for each intermediate state, leaves stale generated files behind and hot-reloads them. Stop it first, or work in a separate worktree. Tooling traps: rules of `leancode_lint`'s analyzer plugin are ignored with its prefix (`// ignore: leancode_lint/missing_equatable_props`); `dart fix --apply` moves `flutter_driver` into the app's `dependencies` (as `any`) on every run, so restore it as a dev dependency (`sdk: flutter`) afterwards; never `dart format` generated code, only the hand-written paths, as `tool/check.sh` does (the server's `test/integration/test_tools/` is generated too, so format test files one by one, never the whole `test/` folder); and never rebase or check out other commits while `serverpod start` runs: its watcher regenerates code for each intermediate state, leaves stale generated files behind and hot-reloads them. Stop it first, or work in a separate worktree.
Checklist after doing changes, in this order: Checklist after doing changes, in this order:

View file

@ -1,6 +1,8 @@
gradle-wrapper.jar gradle-wrapper.jar
/.gradle /.gradle
/captures/ /captures/
# Gradle's own build output, e.g. its problems report.
/build/
/gradlew /gradlew
/gradlew.bat /gradlew.bat
/local.properties /local.properties

View file

@ -1,4 +1,7 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"> <manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- The app syncs with its server: release builds need this too (Flutter's
template grants it to debug and profile builds only). -->
<uses-permission android:name="android.permission.INTERNET"/>
<application <application
android:label="Halkyon Learn" android:label="Halkyon Learn"
android:name="${applicationName}" android:name="${applicationName}"

View file

@ -29,7 +29,7 @@ dependencies:
appflowy_editor: appflowy_editor:
git: git:
url: https://code.halkyon.app/project-halkyon/appflowy-editor.git url: https://code.halkyon.app/project-halkyon/appflowy-editor.git
ref: 0dac8a046e91ac89c0ffa13e2d603ebf50873332 ref: 83bdb2a3e66881eff9b2f8afe416b57fc791daf9
# Anki packages are zip files. # Anki packages are zip files.
archive: ^4.0.7 archive: ^4.0.7
# Sounds in content (pronunciations): one package for all five platforms; on # Sounds in content (pronunciations): one package for all five platforms; on

View file

@ -53,8 +53,8 @@ packages:
dependency: transitive dependency: transitive
description: description:
path: "." path: "."
ref: "0dac8a046e91ac89c0ffa13e2d603ebf50873332" ref: "83bdb2a3e66881eff9b2f8afe416b57fc791daf9"
resolved-ref: "0dac8a046e91ac89c0ffa13e2d603ebf50873332" resolved-ref: "83bdb2a3e66881eff9b2f8afe416b57fc791daf9"
url: "https://code.halkyon.app/project-halkyon/appflowy-editor.git" url: "https://code.halkyon.app/project-halkyon/appflowy-editor.git"
source: git source: git
version: "6.1.0" version: "6.1.0"
@ -868,10 +868,10 @@ packages:
dependency: transitive dependency: transitive
description: description:
name: keyboard_height_plugin name: keyboard_height_plugin
sha256: "3a51c8ebb43465ebe0b3bad17f3b6d945421e58011f3f5a08134afe69a3d775f" sha256: d57944cd3e4f8d9cb4adb1b7f1300d14a8dcec99bfb4414d78c7dd0120c1d66c
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "0.1.5" version: "0.3.0"
leak_tracker: leak_tracker:
dependency: transitive dependency: transitive
description: description: