纳入范围: - backend/ Spring Boot 多模块后端(iot-common/device/rule/data/alarm/auth) - frontend/admin/ Vue3 + Element Plus 管理后台 - Android/ 涂鸦原生 APP (com.xhai.iot) - backend/sql/ Flyway 风格迁移脚本(V2~V21) - docs/ 对接文档与设计文档 排除范围: - 构建产物: node_modules/ target/ build/ dist/ .gradle/ - 签名密钥: *.jks *.keystore (严禁入库) - 本机配置: Android/local.properties - 运行日志: logs/ *.log - AI 协作本地数据 .codebuddy/ 与第三方 demo tuya-demo/ .gitattributes 统一以 LF 存储, Windows 批处理保留 CRLF
92 lines
2.7 KiB
Groovy
92 lines
2.7 KiB
Groovy
plugins {
|
||
id 'com.android.application'
|
||
id 'kotlin-android'
|
||
}
|
||
if (new File("thingMapping.gradle").exists()) {
|
||
apply from: "thingMapping.gradle"
|
||
}
|
||
|
||
android {
|
||
compileSdk 34
|
||
|
||
namespace "com.tuya.appsdk.sample"
|
||
|
||
defaultConfig {
|
||
applicationId "com.test007.demo"
|
||
minSdkVersion 23
|
||
targetSdkVersion 34
|
||
versionCode 1
|
||
versionName "1.0"
|
||
|
||
Properties properties = new Properties()
|
||
properties.load(project.rootProject.file('local.properties').newDataInputStream())
|
||
manifestPlaceholders = [
|
||
TUYA_SMART_APPKEY: "${properties.getProperty("appKey")}",
|
||
TUYA_SMART_SECRET: "${properties.getProperty("appSecret")}",
|
||
AI_SOLUTION_CODE : "${properties.getProperty("aiSolutionCode", "")}",
|
||
MINI_PROGRAM_ID : "${properties.getProperty("miniProgramId", "")}"
|
||
]
|
||
|
||
ndk {
|
||
abiFilters "armeabi-v7a", "arm64-v8a"
|
||
}
|
||
}
|
||
lintOptions {
|
||
abortOnError false
|
||
}
|
||
|
||
packagingOptions {
|
||
pickFirst 'lib/*/libc++_shared.so' // 多个aar存在此so,需要选择第一个
|
||
pickFirst 'lib/*/libgnustl_shared.so'//业务包需要
|
||
pickFirst 'lib/*/liblog.so'
|
||
pickFirst 'lib/*/libopenh264.so'
|
||
pickFirst 'lib/*/libyuv.so'
|
||
}
|
||
|
||
buildTypes {
|
||
release {
|
||
minifyEnabled false
|
||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||
}
|
||
}
|
||
compileOptions {
|
||
sourceCompatibility JavaVersion.VERSION_17
|
||
targetCompatibility JavaVersion.VERSION_17
|
||
}
|
||
|
||
kotlinOptions {
|
||
jvmTarget = '17'
|
||
}
|
||
|
||
}
|
||
|
||
configurations.all {
|
||
exclude group: "com.thingclips.smart", module: 'thingsmart-modularCampAnno'
|
||
}
|
||
|
||
dependencies {
|
||
implementation fileTree(dir: "libs", include: ["*.jar", "*.aar"])
|
||
|
||
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||
implementation 'androidx.core:core-ktx:1.3.2'
|
||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||
implementation 'com.google.android.material:material:1.3.0-alpha04'
|
||
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
|
||
implementation 'androidx.navigation:navigation-fragment-ktx:2.2.2'
|
||
implementation 'androidx.navigation:navigation-ui-ktx:2.2.2'
|
||
|
||
implementation 'com.alibaba:fastjson:1.1.67.android'
|
||
implementation 'com.squareup.okhttp3:okhttp-urlconnection:4.10.0'
|
||
|
||
|
||
implementation project(':base_res')
|
||
implementation project(":home")
|
||
implementation project(":device_config")
|
||
implementation project(":device_management")
|
||
implementation project(":ipc")
|
||
implementation project(":sweeper")
|
||
implementation 'cn.yipianfengye.android:zxing-library:2.2'
|
||
|
||
|
||
}
|