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' }