AndroidCommon/AndroidLibs/README.md

58 行
1.6 KiB
Markdown

# AndroidLibs
一个面向开源的 Android 插件化项目基线,包含宿主 App、业务插件以及可复用的基础 SDK。
## 模块结构
- `commonsdk-core`: SDK 核心,承载网络、共享缓存、插件管理、App 更新、设备信息与时间工具。
- `commonsdk-compose`: Compose 扩展组件。
- `lib-szyx`: 项目专属 SDK,承载真实登录接口、签名、业务 Header 与会话管理。
- `sample-app`: 示例宿主应用。
- `plugins/plugin-ui`: UI 演示插件,可独立运行,也可被宿主拉起。
- `docs`: 方案文档。
## 技术基线
- JDK 21
- AGP 9.1.0
- Kotlin 2.3.10
- Compose BOM 2026.03.00
## Nexus
- 依赖拉取仓库:`https://nexus.xuqinmin.com/repository/android/`
- Snapshot 上传:`https://nexus.xuqinmin.com/repository/android-snapshot/`
- Release 上传:`https://nexus.xuqinmin.com/repository/android-hosted/`
发布账号请放入本地 `local.properties` 或环境变量,不要提交到仓库。
## 发布配置
建议在 `local.properties` 中提供:
```properties
nexus.username=your-username
nexus.password=your-password
```
然后执行:
```bash
./gradlew publish
```
## 当前实现重点
- `sample-app``plugin-ui` 共享 `commonsdk-core / commonsdk-compose / lib-szyx`
- 登录接口和签名逻辑参考 `LibsDemo` 中现有实现
- `commonsdk-core` 提供:
- `HttpManager / RetrofitManager`
- `SharedCacheManager / SharedCacheProvider`
- `PluginPackageManager`
- `AppUpdater`
- `lib-szyx` 提供:
- `SzyxSDK`
- `AuthApi / AuthRepository`
- `BusinessHeaderInterceptor`
- `SzyxLoginActivity`