From c58ed322ecccf90aca347bc227d9f6bbb2a736aa Mon Sep 17 00:00:00 2001 From: 4aiman Date: Sun, 16 Aug 2026 21:16:55 +0300 Subject: [PATCH] docs: WebView CDP debugging + build.sh usage notes --- PROJECT_MAP.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/PROJECT_MAP.md b/PROJECT_MAP.md index fc9be2f..4d5774d 100644 --- a/PROJECT_MAP.md +++ b/PROJECT_MAP.md @@ -206,7 +206,19 @@ kcal = (dt/60) * (MET * 3.5 * weight_kg) / 200 ## Сборка ```bash -./build.sh -d android # debug APK -./build.sh android # release APK -./build.sh -i android -d # debug + install +./build.sh -d -i android # debug APK + установка на телефон (для телефона всегда -d) +./build.sh android # release APK (подпись debug.keystore) +./build.sh -u -d android # debug + install + заливка на роутер/VPS (OTA) +./build.sh install -d # поставить уже собранный APK без пересборки ``` +Без таргета `./build.sh` = dev-сервер (десктоп), НЕ сборка APK. + +## Отладка WebView (debug-сборки) + +Debug-APK инспектируется через Chrome DevTools Protocol — можно смотреть DOM/состояние и выполнять JS прямо на телефоне: +```bash +PID=$(adb shell pidof dev.baldav.app) +adb forward tcp:9222 localabstract:webview_devtools_remote_$PID +curl -s http://127.0.0.1:9222/json/list # webSocketDebuggerUrl страницы +``` +`test_recovery/cdp.js` (gitignored) — минимальный CDP-клиент: `node cdp.js "" ""` (Runtime.evaluate, awaitPromise). Так был найден баг зависания `showSessionDetail` на 1-точечном треке (delete не привязывался — исполнение висело на `await whenMapReady` без вида карты).