XuqmGroup-AndroidSDK/sdk-update
2026-06-23 13:44:19 +08:00
..
scripts docs(deploy): 添加部署文档和安全设计规范 2026-05-08 18:31:59 +08:00
src/main/java/com/xuqm/sdk/update feat(core): 添加请求签名功能并扩展更新接口 2026-06-19 01:27:56 +08:00
build.gradle.kts feat(proguard): 各模块开启 R8 混淆,添加 proguard-rules.pro 保留公开 API 2026-06-23 13:35:10 +08:00
consumer-rules.pro docs(test): 更新测试报告和文档 2026-05-05 16:06:32 +08:00
proguard-rules.pro fix(proguard): sdk-core 保留全部类名,其余模块加 -dontwarn 避免跨模块 R8 缺类错误 2026-06-23 13:44:19 +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 实时推送更新通知