纳入范围: - 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
105 lines
3.7 KiB
Groovy
105 lines
3.7 KiB
Groovy
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')
|
||
|
||
} |