apply plugin: 'com.android.application' def appName() { return "TTStdElderlyAssistant" } def releaseTime() { return new Date().format("yyyyMMdd_HHmmss", TimeZone.getDefault()) } android { compileSdkVersion 33 buildToolsVersion "30.0.3" defaultConfig { applicationId "com.ttstd.elderlyassistant" //There are no CERT files because If the mini sdk version is 23+, the AGP will ignore the V1 scheme signature. minSdkVersion 23 targetSdkVersion 33 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } ndk { //根据需要 自行选择添加的对应cpu类型的.so库。 abiFilters 'arm64-v8a' // 还可以添加 'armeabi','armeabi-v7a', 'x86', 'x86_64', 'mips', 'mips64' } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } dataBinding { enabled true } } buildTypes { debug { versionNameSuffix "_debug" debuggable true minifyEnabled false //Zipalign优化 zipAlignEnabled true // signingConfig signingConfigs.tuixin applicationVariants.all { variant -> variant.outputs.each { output -> if (outputFile != null) { def fileName = "${appName()}_V${defaultConfig.versionName}_${releaseTime()}.apk" output.outputFileName = fileName } } } } release { minifyEnabled false //Zipalign优化 zipAlignEnabled true //前一部分代表系统默认的android程序的混淆文件,该文件已经包含了基本的混淆声明,后一个文件是自己的定义混淆文件 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' //签名 // signingConfig signingConfigs.tuixin // 将release版本的包名重命名,加上版本及日期 applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = "" if (outputFile != null) { def fileName = "${appName()}_${variant.versionCode}_V${variant.versionName}_${releaseTime()}_${buildType.name}.apk" output.outputFileName = new File(outputFile, fileName) } } } } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.3.1' implementation 'androidx.constraintlayout:constraintlayout:2.0.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.2.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1' //MMKV implementation 'com.tencent:mmkv-static:1.2.14' //bugly implementation 'com.tencent.bugly:crashreport:4.1.9.2' implementation 'com.iqiyi.xcrash:xcrash-android-lib:3.0.0' }