08-android-sdk.md 1.9 KB

08 Android SDK 说明

当前模块拆分

  • commonsdk-core
    • 网络能力:HttpManagerRetrofitManager
    • 下载能力:DownloadManager
    • 文件能力:FileHelper
    • 权限能力:PermissionManager
    • 缓存能力:GlobalCacheSharedCacheManager
    • 通信能力:PluginMessenger
    • 通用 UI 能力:ToastCenterDialogCenter
    • 工具能力:LoggerDateTimeUtils
  • commonsdk-compose
    • 下拉刷新:SwipeRefreshContainerRefreshableLazyColumn
    • 折叠面板:AccordionPanelRefreshableAccordionList
    • 左滑操作:SwipeActionItem
    • WebView:CommonWebViewWebViewPageActivity
    • 图片:AdaptiveImageCircleImage
  • commonsdk-update
    • 宿主更新:AppUpdater
    • 插件更新:PluginPackageManager
    • SDK 门面:UpdateSDK
    • 版本比较:VersionComparator

设计原则

  • 下载与文件安装归 core,保证后续任意业务 SDK 都能复用。
  • 宿主更新和插件更新归 commonsdk-update,避免核心模块承担业务升级策略。
  • Compose 组件保持业务无关,App 可直接引用或二次封装。

接入方式

宿主应用

  • 初始化基础 SDK:CoreSDK.init(context, CoreSDK.SDKConfig(...))
  • 使用更新能力:UpdateSDK.appUpdater()UpdateSDK.pluginPackageManager()
  • 使用公共能力:CoreSDK.fileHelper()CoreSDK.cache()CoreSDK.dialogCenter()

WebView 页面

  • 内嵌组件:直接使用 CommonWebView(url = "...")
  • 独立页面:通过 WebViewPageActivity.createIntent(context, url, title) 跳转

权限申请

  • 通过 PermissionManager.register(...) 注册权限请求器
  • 请求时传入权限标题和描述,框架会先弹出确认说明,再真正调用系统权限弹窗

当前验证

  • 2026-03-27 已执行:
    • ./gradlew --no-daemon --no-configuration-cache :sample-app:assembleDebug :plugins:plugin-ui:assembleDebug
  • 结果:构建通过