XuqmGroup-AndroidSDK/sdk-update
XuqmGroup 5b21a7a52e feat(sdk-update): 服务未开通时返回 serviceActivated=false
- UpdateInfo: 新增 serviceActivated: Boolean = true 字段
- UpdateSDK.checkAppUpdate: 服务端返回 code=40404 时返回 UpdateInfo(serviceActivated=false)
- UpdateInfoDto: 保持仅持有业务字段(无 serviceActivated),由 checkAppUpdate 根据响应 code 注入

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-17 12:22:24 +08:00
..
scripts docs(deploy): 添加部署文档和安全设计规范 2026-05-08 18:31:59 +08:00
src/main/java/com/xuqm/sdk/update feat(sdk-update): 服务未开通时返回 serviceActivated=false 2026-06-17 12:22:24 +08:00
build.gradle.kts feat: sdk-log v1.0.0 新建 + sdk-core logApiUrl 扩展 + sdk-update 进度回调 2026-06-16 12:10:58 +08:00
consumer-rules.pro docs(test): 更新测试报告和文档 2026-05-05 16:06:32 +08:00
README.md docs: 添加 CLAUDE.md + 各 module README + sdk-webview JSBridge 补全 2026-06-16 12:14:54 +08:00

sdk-update

XuqmGroup Android SDK 更新模块。提供 App 版本检查和 APK 下载安装能力。

依赖

implementation("com.xuqm:sdk-update:VERSION")
implementation("com.xuqm:sdk-core:VERSION")  // 必须

快速开始

val result = UpdateSDK.checkUpdate(
    appKey = XuqmSDK.appKey,
    platform = Platform.ANDROID,
)

if (result.needsUpdate) {
    UpdateSDK.downloadAndInstall(context, result.downloadUrl)
}

API

API 说明
UpdateSDK.checkUpdate(appKey, platform) 检查 App 更新
UpdateSDK.downloadAndInstall(context, url) 下载 APK 并调起系统安装器

UpdateResult

data class UpdateResult(
    val needsUpdate: Boolean,
    val versionName: String?,
    val versionCode: Int?,
    val downloadUrl: String?,
    val changeLog: String?,
    val forceUpdate: Boolean?,
)

工作原理

  • downloadAndInstall 将 APK 下载到 getExternalFilesDir(null),通过 FileProvider 触发系统安装
  • AndroidManifest 中已配置 @xml/file_pathsexternal-files-path
  • 支持 WebSocket 实时推送更新通知