# Tencent Qian H5 容器 — Android (Kotlin)

腾讯电子签 H5 容器 SDK 的 Android Kotlin 实现，提供容器模式 / 配置模式两种集成方式。

## 工具链

- JDK 17（推荐 Temurin / Zulu）
- Android Gradle Plugin 8.7.x
- Kotlin 1.9.x（通过 Version Catalog 锁定）
- Android SDK：compileSdk = targetSdk = 35，minSdk = 24（Android 7.0）
- Gradle Wrapper 已随仓库提供，**无需全局安装 Gradle**

## 1. 准备本机 Android SDK 路径

```bash
cd android-kotlin
cp local.properties.template local.properties
# 编辑 local.properties，填入 sdk.dir=<本机 Android SDK 路径>
```

## 2. 跑 Demo

```bash
./gradlew :app:installDebug
```

或在 Android Studio 中打开 `android-kotlin/` 目录，选 `app` scheme 运行模拟器 / 真机。

## 3. 命令行构建 / 测试

```bash
bash scripts/build-android-kotlin.sh sdk     # 构建 webview-container Release AAR
bash scripts/build-android-kotlin.sh demo    # 构建 Demo Debug APK
bash scripts/build-android-kotlin.sh all     # SDK + Demo 全量
bash scripts/test-android-kotlin.sh          # 跑单元测试
```

构建产物路径：

- SDK AAR：`webview-container/build/outputs/aar/webview-container-release.aar`
- Demo APK：`app/build/outputs/apk/debug/app-debug.apk`

## 4. 最小集成代码

```kotlin
TencentQianWebView.open(
    activity = this,
    url = signUrl,
    config = TencentQianWebViewConfig(topBarTitle = "电子签署"),
    callback = object : SignCallback {
        override fun onSignResult(result: SignResult) {
            // result.action / result.result / result.flowId / result.extras
        }
    }
)
```

更多集成方式（容器模式 / 配置模式 / 自行适配）详见 [`webview-container/README.md`](./webview-container/README.md) 与 [`docs/`](../docs/)。

## 目录结构

```
android-kotlin/
├── webview-container/            # SDK Library 模块（输出 .aar）
├── app/                          # Demo Application 模块
├── gradle/                       # Version Catalog + Gradle Wrapper
│   ├── libs.versions.toml
│   └── wrapper/
├── build.gradle.kts              # 根级 Kotlin DSL
├── settings.gradle.kts
├── gradle.properties
├── gradlew / gradlew.bat         # Gradle Wrapper 脚本
├── local.properties.template     # 本机 SDK 路径模板（拷贝后填实际路径）
└── README.md                     # 本文件
```
