Files
tongxunruanjian/mobile/android/app/build.gradle.kts
T

84 lines
2.9 KiB
Kotlin
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
buildscript {
repositories {
maven("https://maven.aliyun.com/repository/google")
maven("https://maven.aliyun.com/repository/central")
maven("https://developer.huawei.com/repo/")
google()
mavenCentral()
}
// agcp 1.9.x 用 apply() 时会检查 buildscript classpath 里有没有 AGP
// 仅靠 plugins DSL 会报「com.android.tools.build:gradle is no set」。
dependencies {
classpath("com.android.tools.build:gradle:9.0.1")
classpath("com.huawei.agconnect:agcp:1.9.5.301")
}
}
plugins {
id("com.android.application")
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id("dev.flutter.flutter-gradle-plugin")
}
// 华为 agconnect-services.json 到位后才启用 AGConnect 插件,避免缺文件时整包编不过。
// 文件从华为 AppGallery Connect 下载,放到本目录,不要提交进 Git。
// jpush_flutter_android 只在自己的 library 模块 apply 该插件,不会处理本 app 的配置文件,
// 所以这里仍要在 :app 上 apply,并不是重复。
if (file("agconnect-services.json").exists()) {
apply(plugin = "com.huawei.agconnect")
}
android {
namespace = "cn.solsum.jinxunda"
compileSdk = flutter.compileSdkVersion
ndkVersion = flutter.ndkVersion
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
defaultConfig {
applicationId = "cn.solsum.jinxunda"
// 极光厂商通道插件要求 minSdk 24
minSdk = 24
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
manifestPlaceholders["JPUSH_PKGNAME"] = "cn.solsum.jinxunda"
manifestPlaceholders["JPUSH_APPKEY"] = "95fc2352648a7d4568ac8d72"
manifestPlaceholders["JPUSH_CHANNEL"] = "developer-default"
}
// 压缩打包 .so(默认未压缩存储,OpenIM/WebRTC 的 native 库让包多占近一倍体积);
// 代价是安装时多解压一次,对内网分发来说体积更关键。
packaging {
jniLibs {
useLegacyPackaging = true
}
}
buildTypes {
release {
// OpenIM 插件靠反射按字段名分发方法调用,R8/混淆会把字段改名导致
// 所有 SDK 调用静默无响应(表现为 initSDK 永久不返回)。
// 与官方样板工程一致:release 关闭混淆和资源压缩。
isMinifyEnabled = false
isShrinkResources = false
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug")
}
}
}
kotlin {
compilerOptions {
jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17
}
}
flutter {
source = "../.."
}