RealmTest/app/build.gradle

178 lines
6.3 KiB
Groovy
Raw Permalink 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'
id 'kotlin-android'
id 'kotlin-parcelize' // 序列化
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin' //hilt 依赖注入
id "com.google.protobuf" version "0.8.17" //Proto DataStore 插件
id 'androidx.navigation.safeargs.kotlin'//Safe Args传递数据
// id 'com.google.dagger.hilt.android'
}
//apply plugin: 'realm-android'
android {
namespace 'com.navinfo.volvo'
compileSdk 32
defaultConfig {
applicationId "com.navinfo.volvo"
minSdk 24
targetSdk 32
versionCode 3
versionName "20230327"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
// 指定room.schemaLocation生成的文件路径
javaCompileOptions {
annotationProcessorOptions {
arguments += ["room.schemaLocation": "$projectDir/schemas".toString()]
}
}
ndk {
abiFilters "armeabi", "armeabi-v7a"
}
}
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'
freeCompilerArgs += [
"-Xjvm-default=all",
]
}
buildFeatures {
viewBinding true
dataBinding true
}
}
dependencies {
def nav_version = "2.5.3"
implementation 'androidx.core:core-ktx:1.8.0'
implementation 'androidx.appcompat:appcompat:1.5.1'
implementation 'com.google.android.material:material:1.7.0'
implementation "androidx.compose.material3:material3:1.0.0-alpha04"
//布局
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
//生命周期
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.4.1'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.1'
implementation "androidx.lifecycle:lifecycle-common-java8:2.4.1"
//导航 // Kotlin
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.0'
//room 数据库相关
implementation 'com.tencent.wcdb:room:1.1-19' // 代替 room-runtime同时也不需要再引用 wcdb-android
implementation 'androidx.sqlite:sqlite-ktx:2.2.0'
implementation 'androidx.room:room-runtime:2.4.3'
implementation 'androidx.room:room-ktx:2.4.3'
annotationProcessor 'androidx.room:room-compiler:2.4.3'
annotationProcessor 'android.arch.persistence.room:compiler:1.1.1'
kapt 'android.arch.persistence.room:compiler:1.1.1'// compiler 需要用 room 的
kapt 'androidx.room:room-compiler:2.4.3'
kapt 'androidx.room:room-ktx:2.4.3'
//分页加载
implementation "androidx.room:room-paging:2.4.3"
implementation "androidx.paging:paging-runtime-ktx:3.1.1"
androidTestImplementation "android.arch.persistence.room:testing:1.1.1"
implementation 'com.tencent.wcdb:wcdb-android:1.1-19'
// 文件选择器 https://github.com/rosuH/AndroidFilePicker/blob/master/README_CN.md
implementation 'me.rosuh:AndroidFilePicker:0.8.2'
// // 时间选择器 https://github.com/Gredicer/datetimepicker
// implementation 'com.github.Gredicer:datetimepicker:V1.0.0'
implementation project(path: ':datetimepicker')
//带侧滑的自定义列表
implementation 'com.yanzhenjie.recyclerview:x:1.3.2'
//下拉刷新,上拉加载
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
// Retrofit 网络请求相关
implementation("com.squareup.retrofit2:retrofit:2.9.0")
implementation("com.squareup.retrofit2:converter-gson:2.9.0")
implementation("com.squareup.okhttp3:okhttp:4.9.0")
implementation("com.squareup.okhttp3:logging-interceptor:4.9.0")
implementation("com.google.code.gson:gson:2.8.6")
//hilt
implementation "com.google.dagger:hilt-android:2.41"
kapt "com.google.dagger:hilt-compiler:2.41"
// 显示错误提示 https://github.com/nhaarman/supertooltips
implementation 'com.nhaarman.supertooltips:library:3.0.0'
// 权限请求框架https://github.com/getActivity/XXPermissions
implementation 'com.github.getActivity:XXPermissions:16.5'
// 相机库 https://natario1.github.io/CameraView/about/getting-started
implementation("com.otaliastudios:cameraview:2.7.2")
// 图片压缩算法 https://github.com/Curzibn/Luban
implementation 'top.zibin:Luban:1.1.8'
// Android工具类库 https://github.com/gycold/EasyAndroid
implementation 'io.github.gycold:easyandroid:2.0.7'
// 日志工具 https://github.com/elvishew/xLog/blob/master/README_ZH.md
implementation 'com.elvishew:xlog:1.10.1'
//加载图片的依赖包
implementation("com.github.bumptech.glide:glide:4.11.0") {
exclude group: "com.android.support"
}
// 多媒体播放库 https://github.com/JagarYousef/ChatVoicePlayer
implementation 'com.github.JagarYousef:ChatVoicePlayer:1.1.0'
// 图片查看器 https://github.com/XiaoGe-1996/ImageViewer
implementation 'com.github.XiaoGe-1996:ImageViewer:v1.0.0'
implementation 'com.github.majidarabi:AndroidFilePicker:0.2.1'
// 数据存储 Preferences DataStore 键值对
implementation "androidx.datastore:datastore-preferences:1.0.0"
// 数据存储 Proto DataStore 对象
implementation "androidx.datastore:datastore-core:1.0.0"
implementation "com.google.protobuf:protobuf-javalite:3.18.0"
}
//Proto DataStore 数据存储插件
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:3.14.0"
}
// Generates the java Protobuf-lite code for the Protobufs in this project. See
// https://github.com/google/protobuf-gradle-plugin#customizing-protobuf-compilation
// for more information.
generateProtoTasks {
all().each { task ->
task.builtins {
java {
option 'lite'
}
}
}
}
}
kapt {
correctErrorTypes true
}