diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 25145b5d6..196f264bb 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -30,7 +30,7 @@ - 书籍文件支持 TXT、EPUB、PDF、UMD,解析入口为 `model/localBook/LocalBook.kt`。 ## 外部依赖与集成 -- 主要依赖:JsoupXpath、json-path、rhino-android、okhttp、glide、nanohttpd、bga-qrcode-zxing、colorpicker、commons-text、markwon、hanlp、epublib-core 等。 +- 主要依赖:JsoupXpath、json-path、rhino-android、okhttp、glide、ktor、bga-qrcode-zxing、colorpicker、commons-text、markwon、hanlp、epublib-core 等。 - 依赖声明见 `build.gradle`、`app/build.gradle`,部分第三方库源码在 `lib/`。 ## 典型开发场景示例 diff --git a/CLAUDE.md b/CLAUDE.md index 4bc42530f..742f67c17 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -86,7 +86,7 @@ Additional top-level packages: - **`help/`** — Infrastructure "glue": HTTP (OkHttp + Cronet), book content processing, backup/WebDAV, JS engine, config - **`model/`** — Runtime state coordinators (not entities): `ReadBook`, `AudioPlay`, `CacheBook`, `BookCover`, etc. - **`service/`** — Android foreground/background services (audio playback, TTS, download, web server) -- **`web/`** — Embedded HTTP server (NanoHTTPD) for remote bookshelf/source editing +- **`web/`** — Embedded HTTP server (Ktor) for remote bookshelf/source editing - **`lib/`** — Third-party library wrappers (MOBI parser, WebDAV client, legacy View theme system, cronet) - **`base/`** — Abstract Activity/Fragment/ViewModel base classes - **`utils/`** — Extension functions and utility classes (~70 files) diff --git a/app/src/main/java/io/legado/app/web/ReadMe.md b/app/src/main/java/io/legado/app/web/ReadMe.md index aee2e2dc6..ebf7a86cb 100644 --- a/app/src/main/java/io/legado/app/web/ReadMe.md +++ b/app/src/main/java/io/legado/app/web/ReadMe.md @@ -1,5 +1,4 @@ # web服务 * controller 数据操作 -* HttpServer http服务 -* WebSocketServer 持续通讯服务 \ No newline at end of file +* KtorServer http服务与WebSocket服务 \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index aefc32034..d767bb934 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -54,7 +54,6 @@ material3IconsExtended = "1.7.8" materialKolor = "4.1.1" media = "1.8.0" media3 = "1.8.0" -nanoHttpd = "2.3.1" navigationCompose = "2.9.8" okhttp = "5.3.2" palette = "1.0.0" @@ -188,9 +187,6 @@ ktor-serialization-gson = { module = "io.ktor:ktor-serialization-gson", version. ktor-server-cors = { module = "io.ktor:ktor-server-cors", version.ref = "ktor" } ktor-server-websockets = { module = "io.ktor:ktor-server-websockets", version.ref = "ktor" } -nanohttpd-nanohttpd = { module = "org.nanohttpd:nanohttpd", version.ref = "nanoHttpd" } -nanohttpd-websocket = { module = "org.nanohttpd:nanohttpd-websocket", version.ref = "nanoHttpd" } - navigation-compose = { module = "androidx.navigation:navigation-compose" } preference-preference = { module = "androidx.preference:preference", version.ref = "preference" } preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "preference" }