mirror of
https://github.com/n08i40k/polytechnic-android.git
synced 2025-12-06 09:47:48 +03:00
Удалёно большинство классов относящихся к CustomLessonViewService: - AlarmReceiver - BootCompletedBroadcastReceiver - ScheduleClvAlarm - StartClvService CustomLessonViewService теперь запускается сервером в определённое время. Переработаны формы авторизации и регистрации. В форме регистрации теперь можно выбрать свою группу из выпадающего списка, а не вводить вручную. Исправлен недочёт, из-за которого можно было вернуться к форме авторизации нажимая кнопку назад (или делать свайп для того же эффекта). Немного изменён логотип приложения. Изменена иконка уведомлений на самодельную.
155 lines
3.9 KiB
Kotlin
155 lines
3.9 KiB
Kotlin
import com.google.protobuf.gradle.id
|
|
import com.google.protobuf.gradle.proto
|
|
|
|
|
|
plugins {
|
|
alias(libs.plugins.android.application)
|
|
alias(libs.plugins.kotlin.android)
|
|
alias(libs.plugins.compose.compiler)
|
|
|
|
kotlin("plugin.serialization") version "2.0.20"
|
|
id("kotlin-parcelize")
|
|
|
|
id("com.google.devtools.ksp")
|
|
|
|
id("com.google.protobuf") version "0.9.4"
|
|
|
|
id("com.google.gms.google-services")
|
|
alias(libs.plugins.google.firebase.crashlytics)
|
|
|
|
id("com.google.dagger.hilt.android")
|
|
}
|
|
|
|
android {
|
|
namespace = "ru.n08i40k.polytechnic.next"
|
|
compileSdk = 35
|
|
|
|
androidResources {
|
|
@Suppress("UnstableApiUsage")
|
|
generateLocaleConfig = true
|
|
}
|
|
|
|
defaultConfig {
|
|
applicationId = "ru.n08i40k.polytechnic.next"
|
|
minSdk = 26
|
|
targetSdk = 35
|
|
versionCode = 15
|
|
versionName = "1.8.0"
|
|
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
|
vectorDrawables {
|
|
useSupportLibrary = true
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
isMinifyEnabled = true
|
|
proguardFiles(
|
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
|
"proguard-rules.pro"
|
|
)
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_11
|
|
targetCompatibility = JavaVersion.VERSION_11
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = "11"
|
|
}
|
|
buildFeatures {
|
|
compose = true
|
|
}
|
|
composeOptions {
|
|
kotlinCompilerExtensionVersion = "1.5.1"
|
|
}
|
|
packaging {
|
|
resources {
|
|
excludes += "/META-INF/{AL2.0,LGPL2.1}"
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
getByName("main") {
|
|
proto {
|
|
srcDir("src/main/proto")
|
|
}
|
|
}
|
|
getByName("test") {
|
|
proto {
|
|
srcDir("src/test/proto")
|
|
}
|
|
}
|
|
getByName("androidTest") {
|
|
proto {
|
|
srcDir("src/androidTest/proto")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// work manager
|
|
implementation(libs.androidx.work.runtime)
|
|
implementation(libs.androidx.work.runtime.ktx)
|
|
|
|
// hilt
|
|
implementation(libs.hilt.android)
|
|
ksp(libs.hilt.android.compiler)
|
|
implementation(libs.androidx.hilt.navigation.compose)
|
|
|
|
// firebase
|
|
implementation(platform(libs.firebase.bom))
|
|
implementation(libs.firebase.analytics)
|
|
implementation(libs.firebase.messaging)
|
|
implementation(libs.firebase.crashlytics)
|
|
implementation(libs.firebase.config)
|
|
|
|
// datastore
|
|
implementation(libs.androidx.datastore)
|
|
implementation(libs.protobuf.lite)
|
|
|
|
implementation(libs.accompanist.swiperefresh)
|
|
|
|
implementation(libs.kotlinx.serialization.json)
|
|
implementation(libs.androidx.core.ktx)
|
|
implementation(libs.androidx.lifecycle.runtime.ktx)
|
|
implementation(libs.androidx.activity.compose)
|
|
implementation(platform(libs.androidx.compose.bom))
|
|
implementation(libs.androidx.ui)
|
|
implementation(libs.androidx.ui.graphics)
|
|
implementation(libs.androidx.ui.tooling.preview)
|
|
implementation(libs.androidx.material3)
|
|
implementation(libs.volley)
|
|
implementation(libs.androidx.navigation.compose)
|
|
|
|
testImplementation(libs.junit)
|
|
androidTestImplementation(libs.androidx.junit)
|
|
androidTestImplementation(libs.androidx.espresso.core)
|
|
androidTestImplementation(platform(libs.androidx.compose.bom))
|
|
androidTestImplementation(libs.androidx.ui.test.junit4)
|
|
debugImplementation(libs.androidx.ui.tooling)
|
|
debugImplementation(libs.androidx.ui.test.manifest)
|
|
}
|
|
|
|
protobuf {
|
|
protoc {
|
|
artifact = "com.google.protobuf:protoc:3.6.1"
|
|
}
|
|
|
|
plugins {
|
|
id("javalite") {
|
|
artifact = "com.google.protobuf:protoc-gen-javalite:3.0.0"
|
|
}
|
|
}
|
|
|
|
generateProtoTasks {
|
|
all().forEach { task ->
|
|
task.plugins {
|
|
id("javalite") { }
|
|
}
|
|
}
|
|
}
|
|
}
|