plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) } object Config { // 包名 const val DL_APPLICATION_ID = "com.dl.dl_test" // 目标项目名字 const val DL_PROJECT_NAME = "dl_test" // 实际显示的应用名字 const val DL_APP_NAME = "dl_test" } android { signingConfigs { create("release") { storeFile = file("../../../build/android/key") storePassword = "123456" keyPassword = "123456" keyAlias = "dl" } } namespace = Config.DL_APPLICATION_ID compileSdk = 36 defaultConfig { applicationId = Config.DL_APPLICATION_ID minSdk = 29 targetSdk = 36 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" ndk { // v7现在 libwebp 编不过 abiFilters.clear() abiFilters.add("arm64-v8a") abiFilters.add("x86_64") } } buildTypes { debug{ buildConfigField("String", "DL_PROJECT_NAME", "\"${Config.DL_PROJECT_NAME}\"") resValue("string", "DL_PROJECT_NAME", Config.DL_PROJECT_NAME) resValue("string", "DL_APP_NAME", Config.DL_APP_NAME) } release { buildConfigField("String", "DL_PROJECT_NAME", "\"${Config.DL_PROJECT_NAME}\"") resValue("string", "DL_PROJECT_NAME", Config.DL_PROJECT_NAME) resValue("string", "DL_APP_NAME", Config.DL_APP_NAME) isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) signingConfig = signingConfigs.getByName("release") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = "11" } buildFeatures { prefab = true buildConfig = true } externalNativeBuild { cmake { path = file("../../../CMakeLists.txt") version = "3.31.6" } } sourceSets { getByName("main"){ assets.srcDirs("../../../project/${Config.DL_PROJECT_NAME}/res") } } // Native 库专属规则 packaging { jniLibs { excludes += "**" pickFirsts += "**/lib${Config.DL_PROJECT_NAME}.so" } } ndkVersion = "29.0.14206865" buildToolsVersion = "35.0.0" } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) implementation(libs.material) implementation(libs.androidx.games.activity) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) }