plugins {
    alias(libs.plugins.kotlin.android)
    id("com.android.library")
    id("kotlin-kapt")
}

android {
    namespace = "com.narutohuo.xindazhou.push"
    compileSdk = 36

    defaultConfig {
        minSdk = 26
    }
    
    // ARouter 配置（Kotlin 方式）
    kapt {
        arguments {
            arg("AROUTER_MODULE_NAME", project.getName())
        }
    }

    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }
    kotlinOptions {
        jvmTarget = "17"
    }
}

repositories {
    flatDir {
        dirs 'libs'
    }
    mavenCentral()
    google()
}

dependencies {
    // 直接依赖 base-core（能力层只需要 base-core 的接口和基础能力）
    // base-core 提供接口定义（IPushService）和基础实现（ILog、NetworkManager）
    implementation(project(":base-core"))
    
    // ARouter（用于依赖注入，实现 base-core 与 push 模块的解耦）
    // base-core 已经通过 api 传递了 arouter-api，这里只需要添加编译器
    kapt("com.alibaba:arouter-compiler:1.5.2")
    
    // Jetpack Startup Library（自动初始化）
    implementation("androidx.startup:startup-runtime:1.1.1")
    
    // 注意：Gson、ILog、ARouter 等已通过 base-core 传递，无需重复依赖
    
    // 极光推送SDK（使用本地下载的 AAR 文件）
    // 注意：需要在极光推送官网注册应用获取 AppKey，并在 AndroidManifest.xml 中配置
    // 文件已手动下载到 libs/ 目录
    implementation(name: 'jpush-5.9.0', ext: 'aar')
    implementation(name: 'jcore-5.2.0', ext: 'aar')
    
    // 厂商通道 SDK（可选，提升推送到达率）
    // 注意：厂商版本必须和 JPush SDK 版本保持一致（当前是 5.9.0）
    // 需要在各厂商开放平台申请 AppKey 和 AppSecret，并在 strings.xml 中配置
    
    // 小米通道
    implementation 'cn.jiguang.sdk.plugin:xiaomi:5.9.0'
    
    // 华为通道
    implementation 'cn.jiguang.sdk.plugin:huawei:5.9.0'
    
    // OPPO通道
    implementation 'cn.jiguang.sdk.plugin:oppo:5.9.0'
    
    // vivo通道
    implementation 'cn.jiguang.sdk.plugin:vivo:5.9.0'
    
    // 魅族通道
    implementation 'cn.jiguang.sdk.plugin:meizu:5.9.0'
}

