Files
CubeAoleyunSN/app/build.gradle
T
tongtong 35ef418786 fix: 修复重复请求拦截并优化定时关机
- 重复请求拦截器改为请求前去重并复用真实响应,避免服务端收到重复请求
- 新增 PowerOffAlarmUtils 通过 AlarmManager 精确调度定时关机
- 设备重启、服务启动、系统时间变更后重新安排关机闹钟
- 重写定时关机时间计算逻辑,修复循环关机跨天与时间格式问题
- 黑名单/白名单缓存过期时间改用默认值
- 运行应用列表排除 DX11、MX11 系统应用
- 版本号升级至 1.6.0915
2026-09-16 17:01:31 +08:00

921 lines
30 KiB
Groovy

plugins {
id 'com.android.application'
}
static def appName() {
return "AoleyunDeviceInfo"
}
static def releaseTime() {
return new Date().format("yyyyMMdd_HHmmss", TimeZone.getDefault())
}
android {
namespace "com.aoleyun.sn"
compileSdkVersion 29
buildToolsVersion "36.0.0"
defaultConfig {
applicationId "com.aoleyun.sn"
versionCode 240
versionName "1.6.0915"
//There are no CERT files because If the mini sdk version is 23+, the AGP will ignore the V1 scheme signature.
minSdkVersion 24
targetSdkVersion 29
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
ndk {
//选择要添加的对应 cpu 类型的 .so 库。
abiFilters 'arm64-v8a', 'armeabi-v7a'
// 还可以添加 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
}
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
}
buildConfigField "String", "ROOT_URL", '"https://led.aoleyun.cn/api/"'
buildConfigField "String", "WEBSOCKET_URL", '"wss://led.aoleyun.cn/wss/"'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildFeatures {
dataBinding true
buildConfig true
aidl true
}
externalNativeBuild {
cmake {
path file('CMakeLists.txt')
}
}
sourceSets {
//测试版的图标
// beta.res.srcDirs = ['src/beta/res']
// newly.res.srcDirs = ['src/beta/res']
main {
jniLibs.srcDir 'src/main/jniLibs'
}
}
// Disable release builds for now
android.variantFilter { variant ->
// // Icon recents is Go only
// if (name.contains("WithQuickstepIconRecents") && !name.contains("l3go")) {
// variant.setIgnore(true)
// }
}
//签名
signingConfigs {
zhanRui {
storeFile file("keystore/zhanxun.keystore")
storePassword "123456"
keyAlias "zhanxun"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled false
}
zhanRuiUserdebug {
storeFile file("keystore/zhanxunUserdebug.keystore")
storePassword "123456"
keyAlias "zhanxunUserdebug"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled false
}
zhanRui12 {
storeFile file("keystore/zhanrui12.jks")
storePassword "123456"
keyAlias "zhanrui12"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled false
}
mtk {
storeFile file("keystore/xueshibaoos.jks")
storePassword "123456"
keyAlias "xueshibaoos"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G10P {
storeFile file("keystore/G10PMTK11.jks")
storePassword "123456"
keyAlias "G10PMTK11"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G11Userdebug {
storeFile file("keystore/G11Userdebug.keystore")
storePassword "123456"
keyAlias "G11Userdebug"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G10PUserDebug {
storeFile file("keystore/G10PUserDebug.jks")
storePassword "123456"
keyAlias "G10PUserDebug"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
zhanruiG10Z {
storeFile file("keystore/zhanruiG10Z.keystore")
storePassword "123456"
keyAlias "zhanruiG10Z"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G10ZUserDebug {
storeFile file("keystore/G10zUserDebug.keystore")
storePassword "123456"
keyAlias "G10zUserDebug"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
mtk12 {
storeFile file("keystore/mtkAndroid12.keystore")
storePassword "123456"
keyAlias "mtk12"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
P20S {
storeFile file("keystore/MTKP20S.keystore")
storePassword "123456"
keyAlias "MTKP20S"
keyPassword "123456"
v2SigningEnabled false
}
//iPlay50 mini,iPlay50 android13 共用签名
iPlay50mini {
storeFile file("keystore/iPlay50Mini.keystore")
storePassword "android"
keyAlias "platform"
keyPassword "android"
v2SigningEnabled false
}
teclast8183 {
storeFile file("keystore/TeclastMTK12.jks")
storePassword "123456"
keyAlias "TeclastMTK12"
keyPassword "123456"
v2SigningEnabled false
}
Huaruian8768 {
storeFile file("keystore/Huaruian8768.jks")
storePassword "123456"
keyAlias "Huaruian8768"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
T40Air {
storeFile file("keystore/T40Air.jks")
storePassword "123456"
keyAlias "T40Air"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
BCM310 {
storeFile file("keystore/BCM310.keystore")
storePassword "123456"
keyAlias "bcm310"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
P50 {
storeFile file("keystore/P50TD.jks")
storePassword "123456"
keyAlias "P50TD"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
seewo {
storeFile file("keystore/aiud.keystore")
storePassword "s4HdJuphaiHhU7WY"
keyAlias "androidreleasekey"
keyPassword "JwUw2oV16rUjWLBC"
v1SigningEnabled true
v2SigningEnabled true
}
iPlay50miniPro {
storeFile file("keystore/iPlay50miniPro.jks")
storePassword "123456"
keyAlias "iplay50minipro"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
U1302 {
storeFile file("keystore/U1302.keystore")
storePassword "123456"
keyAlias "u1302"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
MT6765 {
storeFile file("keystore/MT6765.keystore")
storePassword "123456"
keyAlias "mt6765"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G128T {
storeFile file("keystore/HuaruianG128T.jks")
storePassword "123456"
keyAlias "g128t"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
G122 {
storeFile file("keystore/6789U.p12")
storePassword "123456"
keyAlias "6789u"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
DX11 {
storeFile file("keystore/DX11.p12")
storePassword "123456"
keyAlias "dx11"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
MT6789 {
storeFile file("keystore/MT6789.keystore")
storePassword "123456"
keyAlias "mt6789"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
}
buildTypes {
G12NLDebug.initWith(debug)
G12NLDebug {
buildConfigField "String", "platform", '"G12NL"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.MT6789
}
G12NLRelease.initWith(release)
G12NLRelease {
buildConfigField "String", "platform", '"G12NL"'
signingConfig signingConfigs.MT6789
}
DX11Debug.initWith(debug)
DX11Debug {
buildConfigField "String", "platform", '"DX11"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.DX11
}
DX11Release.initWith(release)
DX11Release {
buildConfigField "String", "platform", '"DX11"'
signingConfig signingConfigs.DX11
}
G122Debug.initWith(debug)
G122Debug {
buildConfigField "String", "platform", '"MT6765"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G122
}
G122Release.initWith(release)
G122Release {
buildConfigField "String", "platform", '"MT6765"'
signingConfig signingConfigs.G122
}
QualcommDebug.initWith(debug)
QualcommDebug {
buildConfigField "String", "platform", '"QualcommA"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.zhanRui
}
QualcommRelease.initWith(release)
QualcommRelease {
buildConfigField "String", "platform", '"QualcommA"'
signingConfig signingConfigs.zhanRui
}
G128TDebug.initWith(debug)
G128TDebug {
buildConfigField "String", "platform", '"G128T"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G128T
}
G128TRelease.initWith(release)
G128TRelease {
buildConfigField "String", "platform", '"G128T"'
signingConfig signingConfigs.G128T
}
MT6765Debug.initWith(debug)
MT6765Debug {
buildConfigField "String", "platform", '"MT6765"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.MT6765
}
MT6765Release.initWith(release)
MT6765Release {
buildConfigField "String", "platform", '"MT6765"'
signingConfig signingConfigs.MT6765
}
QZ15Debug.initWith(debug)
QZ15Debug {
buildConfigField "String", "platform", '"QZA15"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.U1302
}
QZ15Release.initWith(release)
QZ15Release {
buildConfigField "String", "platform", '"QZA15"'
signingConfig signingConfigs.U1302
}
iPlay50miniProDebug.initWith(debug)
iPlay50miniProDebug {
buildConfigField "String", "platform", '"miniG99"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.iPlay50miniPro
}
iPlay50miniProRelease.initWith(release)
iPlay50miniProRelease {
buildConfigField "String", "platform", '"miniG99"'
signingConfig signingConfigs.iPlay50miniPro
}
seewoDebug.initWith(debug)
seewoDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.seewo
buildConfigField "String", "platform", '"seewo"'
}
seewoRelease.initWith(release)
seewoRelease {
signingConfig signingConfigs.seewo
buildConfigField "String", "platform", '"seewo"'
}
P50Debug.initWith(debug)
P50Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.P50
buildConfigField "String", "platform", '"P50TD"'
}
P50Release.initWith(release)
P50Release {
signingConfig signingConfigs.P50
buildConfigField "String", "platform", '"P50TD"'
}
G11JDebug.initWith(debug)
G11JDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.Huaruian8768
buildConfigField "String", "platform", '"aud8786"'
}
G11JRelease.initWith(release)
G11JRelease {
signingConfig signingConfigs.Huaruian8768
buildConfigField "String", "platform", '"aud8786"'
}
T40AirDebug.initWith(debug)
T40AirDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.T40Air
buildConfigField "String", "platform", '"HL500"'
}
T40AirRelease.initWith(release)
T40AirRelease {
signingConfig signingConfigs.T40Air
buildConfigField "String", "platform", '"HL500"'
}
BCM310Debug.initWith(debug)
BCM310Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.BCM310
buildConfigField "String", "platform", '"HL500"'
}
BCM310Release.initWith(release)
BCM310Release {
signingConfig signingConfigs.BCM310
buildConfigField "String", "platform", '"HL500"'
}
AiUduDebug.initWith(debug)
AiUduDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"AUDG104"'
}
AiUduRelease.initWith(release)
AiUduRelease {
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"AUDG104"'
}
Huaruian8768Debug.initWith(debug)
Huaruian8768Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.Huaruian8768
buildConfigField "String", "platform", '"MT8768"'
}
Huaruian8768Release.initWith(release)
Huaruian8768Release {
signingConfig signingConfigs.Huaruian8768
buildConfigField "String", "platform", '"MT8768"'
}
YXPD1Debug.initWith(debug)
YXPD1Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"YXPD1"'
}
YXPD1Release.initWith(release)
YXPD1Release {
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"YXPD1"'
}
c2Debug.initWith(debug)
c2Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.teclast8183
// signingConfig signingConfigs.mtk
buildConfigField "String", "platform", '"MTK8183"'
}
c2Release.initWith(release)
c2Release {
signingConfig signingConfigs.teclast8183
// signingConfig signingConfigs.mtk
buildConfigField "String", "platform", '"MTK8183"'
}
teclast8183Debug.initWith(debug)
teclast8183Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.teclast8183
buildConfigField "String", "platform", '"teclast8183"'
}
teclast8183Release.initWith(release)
teclast8183Release {
signingConfig signingConfigs.teclast8183
buildConfigField "String", "platform", '"teclast8183"'
}
iPlay5013Debug.initWith(debug)
iPlay5013Debug {
buildConfigField "String", "platform", '"iplay5013"'
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.iPlay50mini
}
iPlay5013Release.initWith(release)
iPlay5013Release {
buildConfigField "String", "platform", '"iplay5013"'
signingConfig signingConfigs.iPlay50mini
}
MTKAndroid12Debug.initWith(debug)
MTKAndroid12Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.mtk12
}
MTKAndroid12Release.initWith(release)
MTKAndroid12Release {
signingConfig signingConfigs.mtk12
}
G11Debug.initWith(debug)
G11Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G11Userdebug
buildConfigField "String", "platform", '"MTKG11"'
}
G11Release.initWith(release)
G11Release {
signingConfig signingConfigs.G11Userdebug
buildConfigField "String", "platform", '"MTKG11"'
}
G10PDebug.initWith(debug)
G10PDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"G10P"'
}
G10PRelease.initWith(release)
G10PRelease {
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"G10P"'
}
G13Debug.initWith(debug)
G13Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"HRAD13"'
}
G13Release.initWith(release)
G13Release {
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"HRAD13"'
}
G104Debug.initWith(debug)
G104Debug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"MTK11"'
}
G104Release.initWith(release)
G104Release {
signingConfig signingConfigs.G10P
buildConfigField "String", "platform", '"MTK11"'
}
G104UserDebug.initWith(debug)
G104UserDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10PUserDebug
buildConfigField "String", "platform", '"MTK11"'
}
zhanruiG10ZUserDebug.initWith(debug)
zhanruiG10ZUserDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.G10ZUserDebug
buildConfigField "String", "platform", '"ZR6016"'
}
zhanruiG10ZDebug.initWith(debug)
zhanruiG10ZDebug {
versionNameSuffix "_debug"
debuggable true
signingConfig signingConfigs.zhanruiG10Z
buildConfigField "String", "platform", '"ZR6016"'
}
zhanruiG10ZRelease.initWith(release)
zhanruiG10ZRelease {
signingConfig signingConfigs.zhanruiG10Z
buildConfigField "String", "platform", '"ZR6016"'
}
TeclastP20SDebug.initWith(debug)
TeclastP20SDebug {
debuggable true
versionNameSuffix "_debug"
signingConfig signingConfigs.P20S
buildConfigField "String", "platform", '"P20S"'
}
TeclastP20SRelease.initWith(release)
TeclastP20SRelease {
signingConfig signingConfigs.P20S
buildConfigField "String", "platform", '"P20S"'
}
zhanRuiDebug.initWith(debug)
zhanRuiDebug {
debuggable true
versionNameSuffix "_debug"
signingConfig signingConfigs.zhanRui
buildConfigField "String", "platform", '"展锐"'
}
zhanRuiRelease.initWith(release)
zhanRuiRelease {
signingConfig signingConfigs.zhanRui
buildConfigField "String", "platform", '"展锐"'
}
//userdebug rom使用这个版本
zhanRuiUserdebug.initWith(zhanRuiDebug)
zhanRuiUserdebug {
debuggable true
versionNameSuffix "_debug"
signingConfig signingConfigs.zhanRuiUserdebug
buildConfigField "String", "platform", '"展锐"'
}
zhanRuiUserdebugReleas.initWith(release)
zhanRuiUserdebugReleas {
debuggable true
signingConfig signingConfigs.zhanRuiUserdebug
buildConfigField "String", "platform", '"展锐"'
}
zhanRui12Debug.initWith(debug)
zhanRui12Debug {
debuggable true
versionNameSuffix "_debug"
signingConfig signingConfigs.zhanRui12
buildConfigField "String", "platform", '"AH6016"'
}
zhanRui12Release.initWith(release)
zhanRui12Release {
signingConfig signingConfigs.zhanRui12
buildConfigField "String", "platform", '"AH6016"'
}
debug {
debuggable true
versionNameSuffix "_debug"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
//Zipalign优化
zipAlignEnabled true
signingConfig signingConfigs.mtk
buildConfigField "String", "platform", '"MTK"'
}
release {
//混淆
minifyEnabled false
//前一部分代表系统默认的android程序的混淆文件,该文件已经包含了基本的混淆声明,后一个文件是自己的定义混淆文件
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
//Zipalign优化
zipAlignEnabled true
signingConfig signingConfigs.mtk
buildConfigField "String", "platform", '"MTK"'
}
}
android.applicationVariants.all { variant ->
variant.outputs.all { output -> // 改为 all
def buildType = variant.buildType.name
if (buildType.contains("debug")) {
outputFileName = "${appName()}_V${defaultConfig.versionName}_${releaseTime()}.apk"
} else {
outputFileName = "${appName()}_${variant.versionCode}_V${variant.versionName}_${releaseTime()}_${buildType}.apk"
}
}
}
}
dependencies {
// implementation fileTree(dir: "libs", include: ["*.jar"])
compileOnly files('libs/framework.jar')
compileOnly files('libs/cube_mdm.jar')
compileOnly files('libs/cube_sdk_v1.0.0.jar')
//版本高了idea plugin 下载VisualClassBytes修改version jclasslib最好用
// compileOnly files('libs/qz_cubemdm_sdk_v1.0.0_1.8.jar')
compileOnly files('libs/qz_cubemdm_sdk_v1.0.1_1.8.jar')
implementation files('libs/ebf_tools_v1.0.jar')
implementation files('libs/vendor.mediatek.hardware.nvram-V1.0-java.jar')
implementation files('libs/BaiduTraceSDK_v3_1_10.jar')
// 基础注解库
implementation "androidx.annotation:annotation:1.10.0"
// 包含 OptIn 实验性 Lint 规则检测的核心库
implementation "androidx.annotation:annotation-experimental:1.1.0"
implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation "androidx.lifecycle:lifecycle-service:2.3.1"
implementation 'androidx.activity:activity-ktx:1.2.2'
// CameraX 核心库及生命周期绑定
def camerax_version = "1.0.0" // 请根据实际情况选择稳定版本
implementation "androidx.camera:camera-core:${camerax_version}"
implementation "androidx.camera:camera-camera2:${camerax_version}"
implementation "androidx.camera:camera-lifecycle:${camerax_version}"
implementation "androidx.camera:camera-view:1.0.0-alpha23"
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
implementation 'com.squareup.moshi:moshi:1.9.3'
//OkHttp
implementation 'com.squareup.okhttp3:okhttp:4.8.0'
implementation 'com.squareup.okhttp3:logging-interceptor:4.9.3'
//Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-moshi:2.9.0'
implementation 'com.squareup.retrofit2:adapter-rxjava3:2.9.0'
// gson converter
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
// 标准转换器,去掉 Retrofit以Mutipart上传参数时,String参数会多一对双引号
implementation 'com.squareup.retrofit2:converter-scalars:2.3.0'
//RxJava
implementation 'io.reactivex.rxjava3:rxjava:3.0.0'
implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'
//生命周期管理
implementation 'com.trello.rxlifecycle4:rxlifecycle:4.0.2'
implementation 'com.trello.rxlifecycle4:rxlifecycle-android:4.0.2'
implementation 'com.trello.rxlifecycle4:rxlifecycle-components:4.0.2'
implementation 'com.trello.rxlifecycle4:rxlifecycle-components-preference:4.0.2'
implementation 'com.trello.rxlifecycle4:rxlifecycle-android-lifecycle:4.0.2'
implementation 'com.jakewharton.rxbinding4:rxbinding:4.0.0'
implementation 'com.jeremyliao:live-event-bus-x:1.7.3'
//implementation "com.uber.autodispose:autodispose:1.3.0"
//implementation "com.uber.autodispose:autodispose-android-archcomponents:1.3.0"
//Google
implementation 'com.google.code.gson:gson:2.9.0'
implementation 'com.google.zxing:core:3.5.0'
implementation 'com.google.mlkit:face-detection:16.1.5'
implementation 'com.google.android.material:material:1.0.5'
//图片加载框架
implementation 'com.github.bumptech.glide:glide:4.13.2'
annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2'
// debugImplementation because LeakCanary should only run in debug builds.
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.14'
//磁盘缓存
implementation 'com.jakewharton:disklrucache:2.0.2'
//阿里云推送
implementation 'com.aliyun.ams:alicloud-android-push:3.8.0'
//百度地图
implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.1.8'
//MMKV
implementation 'com.tencent:mmkv-static:2.4.0'
//bugly
implementation 'com.tencent.bugly:crashreport:4.1.9.2'
//xCrash
implementation 'com.iqiyi.xcrash:xcrash-android-lib:3.0.0'
//工具类
implementation 'com.blankj:utilcodex:1.31.0'
//Aria
implementation 'com.arialyy.aria:core:3.8.15'
annotationProcessor 'com.arialyy.aria:compiler:3.8.15'
//压缩文件解压
implementation 'org.zeroturnaround:zt-zip:1.15'
//更换字体框架
implementation 'uk.co.chrisjenx:calligraphy:2.3.0'
//Java WebSocket
implementation "org.java-websocket:Java-WebSocket:1.5.3"
//状态栏透明
implementation 'com.gitee.zackratos:UltimateBarX:0.8.0'
// // 基础依赖包,必须要依赖
// implementation 'com.gyf.immersionbar:immersionbar:3.0.0'
// // fragment快速实现(可选)
// implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0'
// // kotlin扩展(可选)
// implementation 'com.gyf.immersionbar:immersionbar-ktx:3.0.0'
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.32'
implementation 'com.facebook.rebound:rebound:0.3.8'
implementation 'com.king.view:circleprogressview:1.1.2'
// 吐司框架:https://github.com/getActivity/Toaster
implementation 'com.github.getActivity:Toaster:12.6'
}
// 在 dependencies 之后添加
project.afterEvaluate {
android.applicationVariants.all { variant ->
variant.javaCompileProvider.get().options.bootstrapClasspath = files(
file('libs/framework.jar'),
android.getBootClasspath()
)
}
}
//preBuild {
// doLast {
// def imlFile = file(project.name + ".iml")
//// def imlFile = file("..\\.idea\\modules\\" + project.name + "\\" + rootProject.name + "." + project.name + ".iml")
// println 'Change ' + project.name + '.iml order'
// try {
// def parsedXml = (new XmlParser()).parse(imlFile)
// def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' }
// parsedXml.component[1].remove(jdkNode)
// def sdkString = "Android API " + android.compileSdkVersion.substring("android-".length()) + " Platform"
// println 'what' + sdkString
// new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': sdkString, 'jdkType': 'Android SDK'])
// groovy.xml.XmlUtil.serialize(parsedXml, new FileOutputStream(imlFile))
// } catch (FileNotFoundException e) {
// // nop, iml not found
// println "no iml found"
// }
// }
// //https://www.pianshen.com/article/93481144911/
// //https://blog.csdn.net/dhl_1986/article/details/102856026
// //https://blog.csdn.net/zhonghe1114/article/details/80923730
// //https://blog.csdn.net/u014175785/article/details/116235760
// //使用系统编译后的framework.jar
//}