2995840376 0ce191c448 chore: 初始化 iotsaas 版本库基线
纳入范围:
- 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
2026-10-27 12:00:41 +08:00

105 lines
3.7 KiB
Groovy
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
}
android {
namespace 'com.thing.appbizsdk.sample'
compileSdk 33
signingConfigs {
debug {
storeFile file("debug.keystore") //1.Replace with the added SHA256 debug certificate file containing your own information.
storePassword "android"
keyAlias "AndroidDebugKey"
keyPassword "android"
v1SigningEnabled true
v2SigningEnabled true
}
}
defaultConfig {
applicationId "com.thing.appbizsdk.sample" //2.Use your own app ID
minSdkVersion 23
targetSdkVersion 33
versionCode 1
versionName "1.0"
multiDexEnabled true
//3.In the local.properties file, add appKey and appSecret:
//appKey=your_app_key
//appSecret=your_app_secret
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")}",
//4.In the local.properties file, add googleMapKey:
//googleMapKey=your_google_map_key, In order to build and run smoothly, you can configure any one, but Google Maps will definitely not be usable.
GOOGLE_MAP_KEY : "${properties.getProperty("googleMapKey")}",
PACKAGE_NAME : applicationId
]
ndk {
abiFilters "armeabi-v7a", "arm64-v8a"
}
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
packagingOptions {
pickFirst 'lib/*/libc++_shared.so' // 多个aar存在此so,需要选择第一个
pickFirst 'lib/*/libgnustl_shared.so'//业务包需要
pickFirst 'lib/*/liblog.so'
pickFirst 'lib/*/libopenh264.so'
}
packagingOptions {
exclude 'AndroidManifest.xml'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
buildFeatures {
viewBinding true
}
}
dependencies {
//5.Remember to add the downloaded security library(security-algorithm-1.0.0-beta.aar) to the libs folder.
implementation fileTree(dir: "libs", include: ["*.jar","*.aar"])
implementation "androidx.core:core-ktx:${kotlin_version}"
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
//demo use only start
api "com.thingclips.smart:thingsmart:${sdk_version}"
api 'com.thingclips.smart:thingsmart-demo-login:4.5.2'
implementation "com.thingclips.smart:thingsmart-expansion-sdk:${expansion_version}"
implementation 'com.alibaba:fastjson:1.1.67.android'
implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.14.9'
implementation "com.facebook.fresco:fresco:2.6.0"
implementation 'cn.yipianfengye.android:zxing-library:2.2'
implementation project(path: ':familybiz')
implementation project(path: ':activator')
implementation project(path: ':scenebiz')
implementation project(path: ':devicebiz')
}