59 lines
1.9 KiB
Groovy
59 lines
1.9 KiB
Groovy
plugins {
|
|
alias(libs.plugins.android.application)
|
|
}
|
|
|
|
android {
|
|
namespace 'tr.dhee.abox.demo'
|
|
compileSdk 34
|
|
// SDK(libABSDK0630.jar) 内部依赖 Apache HttpClient(org.apache.http)。
|
|
// 自包含方案: 四个 Apache jar 直接打进 APK, 不依赖设备系统库(任意机型可装)。
|
|
|
|
defaultConfig {
|
|
applicationId "tr.dhee.abox.demo"
|
|
minSdk 21
|
|
targetSdk 34
|
|
versionCode 1
|
|
versionName "1.0"
|
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_11
|
|
targetCompatibility JavaVersion.VERSION_11
|
|
}
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
|
|
// 多个 Apache HTTP 相关 jar 均带 META-INF 元数据文件, 打包进同一 APK 会冲突, 排除这些重复元数据(不影响运行时类)。
|
|
packagingOptions {
|
|
resources {
|
|
excludes += ['META-INF/DEPENDENCIES', 'META-INF/LICENSE', 'META-INF/LICENSE.txt',
|
|
'META-INF/NOTICE', 'META-INF/NOTICE.txt', 'META-INF/ASL2.0',
|
|
'META-INF/license.txt', 'META-INF/notice.txt']
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// 引入 libs 下全部 jar: SDK(libABSDK0630.jar) + Apache HttpClient 四件套(自包含, 不依赖系统库)。
|
|
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
|
|
|
implementation libs.activity.ktx
|
|
implementation libs.annotation
|
|
implementation libs.appcompat
|
|
implementation libs.constraintlayout
|
|
implementation libs.lifecycle.livedata.ktx
|
|
implementation libs.lifecycle.viewmodel.ktx
|
|
implementation libs.material
|
|
testImplementation libs.junit
|
|
androidTestImplementation libs.espresso.core
|
|
androidTestImplementation libs.ext.junit
|
|
} |