Files
yinmeng-android/app/build.gradle

351 lines
11 KiB
Groovy
Raw Normal View History

2020-04-02 10:43:40 +08:00
apply plugin: 'com.android.application'
2020-07-06 18:38:23 +08:00
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
2020-07-27 18:00:04 +08:00
apply plugin: 'com.huawei.agconnect'
2022-08-29 11:35:39 +08:00
apply from: '../mob.gradle'
2022-09-15 21:43:00 +08:00
apply plugin: 'android-junk-code'
2020-04-02 10:43:40 +08:00
android {
2023-04-13 16:58:18 +08:00
compileSdkVersion COMPILE_SDK_VERSION.toInteger()
2020-04-02 10:43:40 +08:00
defaultConfig {
applicationId "cn.nnbc123.voice"
2023-04-13 16:58:18 +08:00
minSdkVersion MIN_SDK_VERSION.toInteger()
targetSdkVersion TARGET_SDK_VERSION.toInteger()
2020-04-02 10:43:40 +08:00
versionCode Integer.valueOf(version_code)
versionName version_name
2020-04-24 15:14:59 +08:00
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
2020-04-02 10:43:40 +08:00
multiDexEnabled true
// ndk {
// abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
// }
2020-04-02 10:43:40 +08:00
flavorDimensions 'default'
}
// splits {
// abi {
// enable true
// reset()
// include 'armeabi-v7a', 'arm64-v8a', 'x86'
// universalApk true
// }
// }
2020-05-12 16:01:27 +08:00
//在apk文件后边生成版本号信息
android.applicationVariants.configureEach { variant ->
variant.outputs.configureEach { output ->
def date = new Date().format("MMddHHmm", TimeZone.getTimeZone("GMT+08"))
def outputFile = output.outputFile
if (outputFile == null || !outputFile.name.endsWith('.apk')) {
return
2020-05-12 16:01:27 +08:00
}
def abi = output.getFilter(com.android.build.OutputFile.ABI)
if (abi == null) {
abi = "universal"
}
outputFileName = "yinmeng_${variant.flavorName}_${buildType.name}_v${defaultConfig.versionName}_${defaultConfig.versionCode}_${abi}_${date}.apk"
}
2020-05-12 16:01:27 +08:00
}
2020-04-02 10:43:40 +08:00
lintOptions {
abortOnError false
disable 'MissingTranslation'
disable 'ExtraTranslation'
}
dataBinding {
enabled = true
}
2021-01-08 15:34:13 +08:00
viewBinding {
enabled = true
}
2020-04-02 10:43:40 +08:00
packagingOptions {
exclude 'lib/armeabi-v7a/libagora-crypto.so'
}
signingConfigs {
v2 {
storeFile file('../yinmeng.jks')
storePassword "yinmeng2023"
keyAlias "yinmeng"
keyPassword "yinmeng2023"
2020-04-02 10:43:40 +08:00
v2SigningEnabled true
v1SigningEnabled true
}
v1 {
storeFile file('../yinmeng.jks')
storePassword "yinmeng2023"
keyAlias "yinmeng"
keyPassword "yinmeng2023"
v2SigningEnabled false
2020-04-02 10:43:40 +08:00
v1SigningEnabled true
}
}
sourceSets {
main {
java.srcDirs = [
'src/main/java',
'src/module_public_chat_hall/java',
'src/module_upgrade_app/java',
'src/module_mentoring_relationship/java',
'src/module_labour_union/java',
'src/module_room_chat/java',
'src/model_customer_server/java',
'src/module_music/java',
'src/module_mini_world/java',
'src/module_lottery_dialog/java',
'src/module_bank_card/java',
'src/module_super_admin/java',
'src/module_treasure_box/java',
'src/module_community/java',
2020-04-07 16:41:24 +08:00
'src/module_album/java',
'src/module_quick_pass/java'
2020-04-02 10:43:40 +08:00
]
res.srcDirs = [
'src/main/res',
'src/common/res',
'src/module_public_chat_hall/res',
'src/module_upgrade_app/res',
'src/module_mentoring_relationship/res',
'src/module_labour_union/res',
'src/module_room_chat/res',
'src/model_customer_server/res',
'src/module_music/res',
'src/module_mini_world/res',
'src/module_lottery_dialog/res',
'src/module_bank_card/res',
'src/module_super_admin/res',
'src/module_treasure_box/res',
'src/module_community/res',
2020-04-07 16:41:24 +08:00
'src/module_album/res',
'src/module_quick_pass/res'
2020-04-02 10:43:40 +08:00
]
2022-09-07 16:26:05 +08:00
jniLibs.srcDirs = ['libs', 'aliyun-libs']
2020-04-02 10:43:40 +08:00
}
}
buildTypes {
release {
2023-03-15 10:36:51 +08:00
buildConfigField "String", "BASE_URL", "\"https://api.nnbc123.cn/\""
buildConfigField "String", "WEB_URL", "\"https://h5.nnbc123.cn/\""
2020-04-02 10:43:40 +08:00
buildConfigField "String", "BASE_URL_DEBUG", "BASE_URL"
buildConfigField "String", "BASE_URL_STAGING", "BASE_URL"
buildConfigField "String", "BASE_URL_RELEASE", "BASE_URL"
minifyEnabled true
shrinkResources true
signingConfig signingConfigs.v2
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
println("minifyEnabled = " + minify_enabled)
2023-07-27 16:13:54 +08:00
buildConfigField "String", "BASE_URL", "\"http://beta.api.nnbc123.cn/\""
2023-07-28 10:23:22 +08:00
buildConfigField "String", "WEB_URL", "\"http://beta.api.nnbc123.cn\""
2020-04-02 10:43:40 +08:00
buildConfigField "String", "BASE_URL_DEBUG", "BASE_URL"
2023-03-15 10:36:51 +08:00
buildConfigField "String", "BASE_URL_STAGING", "\"https://api.nnbc123.cn/\""
buildConfigField "String", "BASE_URL_RELEASE", "\"https://api.nnbc123.cn/\""
minifyEnabled minify_enabled.toBoolean() // 是否混淆
2020-04-02 10:43:40 +08:00
shrinkResources false
signingConfig signingConfigs.v2
2020-05-12 17:58:42 +08:00
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
2020-04-02 10:43:40 +08:00
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
2020-04-02 10:43:40 +08:00
}
2021-06-03 18:36:12 +08:00
kotlinOptions {
jvmTarget = "11"
2021-06-03 18:36:12 +08:00
}
2021-12-20 10:27:23 +08:00
buildToolsVersion = '30.0.3'
2020-04-02 10:43:40 +08:00
productFlavors {
official {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
2024-03-18 18:42:58 +08:00
fir {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
mlq {
ndk {
abiFilters 'x86'
}
}
yingyongbao {
ndk {
abiFilters 'armeabi-v7a'
}
}
vivo {
ndk {
abiFilters 'arm64-v8a'
}
}
oppo {
ndk {
abiFilters 'arm64-v8a'
}
}
xiaomi {
ndk {
abiFilters 'arm64-v8a'
}
}
huawei {
ndk {
abiFilters 'arm64-v8a'
}
}
2024-03-28 12:00:55 +08:00
rongyao {
ndk {
abiFilters 'arm64-v8a'
}
}
kuaishou_01 {
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
}
}
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [
// 渠道
CHANNEL_VALUE : name,
]
}
2020-04-02 10:43:40 +08:00
}
dependencies {
2022-11-01 16:49:21 +08:00
implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
implementation fileTree(dir: 'aliyun-libs', include: ['*.jar', '*.aar'])
2023-07-27 16:13:54 +08:00
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.6.1'
2023-07-27 16:13:54 +08:00
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
2021-01-05 11:51:57 +08:00
2020-07-24 14:05:51 +08:00
api 'androidx.multidex:multidex:2.0.1'
2020-04-02 10:43:40 +08:00
2021-05-12 20:54:37 +08:00
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
2020-04-02 10:43:40 +08:00
api "com.orhanobut:dialogplus:1.11@aar"
api "com.readystatesoftware.systembartint:systembartint:1.0.4"
api "com.rengwuxian.materialedittext:library:2.1.4"
api "com.github.flavienlaurent.datetimepicker:library:0.0.2"
api "com.darsh.multipleimageselect:multipleimageselect:1.0.4"
2020-04-24 15:14:59 +08:00
api "me.shaohui.advancedluban:library:1.3.5"
2020-04-02 10:43:40 +08:00
api "pl.droidsonroids.gif:android-gif-drawable:1.2.7"
api "com.makeramen:roundedimageview:2.3.0"
api "com.jzxiang.pickerview:TimePickerDialog:1.0.1"
api "com.github.zyyoona7:EasyPopup:1.0.2"
2021-10-15 15:22:13 +08:00
api "com.github.donkingliang:LabelsView:1.6.5"
2021-11-05 14:14:56 +08:00
api "com.github.yyued:SVGAPlayer-Android:2.6.1"
2020-04-24 15:14:59 +08:00
implementation "com.orhanobut:logger:2.2.0"
2020-04-02 10:43:40 +08:00
api "com.ms-square:expandableTextView:0.1.4"
2021-12-20 10:27:23 +08:00
api "com.jakewharton:butterknife:10.2.3"
annotationProcessor "com.jakewharton:butterknife-compiler:10.2.3"
2020-04-02 10:43:40 +08:00
implementation "com.llew.huawei:verifier:1.0.3"
annotationProcessor 'androidx.annotation:annotation:1.2.0'
2020-04-02 10:43:40 +08:00
2021-12-29 19:03:15 +08:00
implementation 'io.github.h07000223:flycoTabLayout:3.0.0'
2020-04-02 10:43:40 +08:00
api project(':core')
implementation 'com.github.qiujayen:sticky-layoutmanager:1.0.1'
implementation 'com.github.chenBingX:SuperTextView:v3.0.0'
//支付密码输入框
api 'com.jungly:gridPasswordView:0.3'
2021-11-12 17:11:32 +08:00
api 'com.google.android.flexbox:flexbox:3.0.0'
2020-04-02 10:43:40 +08:00
implementation 'nl.dionsegijn:konfetti:1.1.2'
//数字滚动效果
implementation 'com.github.YvesCheung:RollingText:1.2.3'
// 引入原有第三方裁图源码,方便修改
api project(':android_crop_lib')
//rx权限请求框架
implementation('com.github.tbruyelle:rxpermissions:0.10.2') {
exclude group: 'io.reactivex.rxjava2'
}
//验证码控件 https://github.com/JingYeoh/VercodeEditText
implementation 'com.justkiddingbaby:vercodeedittext:1.1.0'
implementation 'it.sephiroth.android.library.imagezoom:library:1.0.4'
2020-04-07 16:41:24 +08:00
// 易盾一键登录
2022-02-22 15:15:33 +08:00
implementation 'io.github.yidun:quicklogin:3.1.5'
2020-04-07 16:41:24 +08:00
2020-04-10 16:48:04 +08:00
implementation 'com.github.fodroid:XRadioGroup:v1.5'
2022-04-18 11:18:20 +08:00
//华为推送
2022-09-07 15:34:55 +08:00
implementation 'com.huawei.hms:push:6.5.0.300'
//魅族推送
implementation 'com.meizu.flyme.internet:push-internal:4.1.0'
2022-11-01 16:49:21 +08:00
//oppo推送需要
2022-09-07 15:34:55 +08:00
implementation 'commons-codec:commons-codec:1.6'
2022-11-01 16:49:21 +08:00
// api 'com.tencent.vasdolly:helper:3.0.3'
2022-03-10 18:39:54 +08:00
implementation "io.github.tencent:vap:2.0.24"
implementation 'com.github.mmin18:realtimeblurview:1.2.1'
2023-03-14 16:34:25 +08:00
implementation 'com.qiyukf.unicorn:unicorn:8.2.0'
2023-04-14 17:51:53 +08:00
implementation 'com.github.yalantis:ucrop:2.2.7'
2020-04-02 10:43:40 +08:00
}
repositories {
flatDir {
2022-11-01 16:49:21 +08:00
dirs 'aliyun-libs', 'com.huawei.agconnect'
2020-04-02 10:43:40 +08:00
}
2020-07-07 18:47:11 +08:00
mavenCentral()
2021-11-19 16:31:47 +08:00
2020-04-02 10:43:40 +08:00
}
2021-12-20 10:27:23 +08:00
2022-09-15 21:43:00 +08:00
android.applicationVariants.all { variant ->
print("variant.name=" + variant.name)
if (variant.name.contains("release") || variant.name.contains("Release")) {
androidJunkCode.configMap.put(variant.name, {
packageBase = "com.nnbc123.plugin.ui" //生成java类根包名
packageCount = 30 //生成包数量
activityCountPerPackage = 30 //每个包下生成Activity类数量
excludeActivityJavaFile = false
//是否排除生成Activity的Java文件,默认false(layout和写入AndroidManifest.xml还会执行),主要用于处理类似神策全埋点编译过慢问题
otherCountPerPackage = 50 //每个包下生成其它类的数量
methodCountPerClass = 20 //每个类下生成方法数量
resPrefix = "mango_" //生成的layout、drawable、string等资源名前缀
drawableCount = 300 //生成drawable资源数量
stringCount = 300 //生成string数量
})
2022-09-15 21:43:00 +08:00
}
}