From b7fc6fcc38300419f665e896303442fdca6960d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Sun, 19 Jan 2020 19:07:27 +0100 Subject: [PATCH] [Structure] Refactor App class to Kotlin. Rewrite SzkolnyTask and posting notifications. Remove dependency on AppConfig. Update libraries and gradle. --- agendacalendarview/build.gradle | 10 +- app/build.gradle | 7 +- app/proguard/app.pro | 2 +- app/src/main/AndroidManifest.xml | 19 +- app/src/main/assets/pl-changelog.html | 5 +- .../java/pl/szczodrzynski/edziennik/App.kt | 470 ++++++++++-------- .../edziennik/{App.java => AppOld.java} | 201 +------- .../pl/szczodrzynski/edziennik/Extensions.kt | 51 ++ .../szczodrzynski/edziennik/MainActivity.kt | 119 +++-- .../pl/szczodrzynski/edziennik/Notifier.java | 350 ------------- .../szczodrzynski/edziennik/config/Config.kt | 17 +- .../edziennik/config/ConfigGrades.kt | 2 +- .../edziennik/config/ConfigSync.kt | 5 + .../edziennik/config/ConfigUI.kt | 5 - .../edziennik/config/ProfileConfig.kt | 6 +- .../edziennik/config/ProfileConfigUI.kt | 16 + .../edziennik/config/db/ConfigDao.kt | 3 + .../config/utils/AppConfigMigrationV3.kt | 81 +++ .../config/utils/ConfigExtensions.kt | 6 + .../edziennik/config/utils/ConfigMigration.kt | 100 ++-- .../config/utils/ProfileConfigMigration.kt | 22 +- .../edziennik/data/api/ApiService.kt | 35 +- .../edziennik/data/api/DataNotifications.kt | 206 -------- .../api/{task => edziennik}/EdziennikTask.kt | 11 +- .../api/edziennik/edudziennik/Edudziennik.kt | 8 +- .../data/web/EdudziennikWebExams.kt | 4 +- .../data/api/edziennik/idziennik/Idziennik.kt | 8 +- .../data/api/edziennik/librus/Librus.kt | 8 +- .../librus/data/api/LibrusApiEvents.kt | 4 +- .../edziennik/mobidziennik/Mobidziennik.kt | 8 +- .../data/api/edziennik/template/Template.kt | 8 +- .../data/api/edziennik/vulcan/Vulcan.kt | 8 +- .../data/api/events/ProfileListEmptyEvent.kt | 7 + .../edziennik/data/api/models/Data.kt | 16 - .../data/api/models/DataRemoveModel.kt | 8 +- .../edziennik/data/api/szkolny/Szkolny.kt | 52 -- .../edziennik/data/api/szkolny/SzkolnyApi.kt | 41 +- .../data/api/szkolny/SzkolnyService.kt | 14 +- .../api/szkolny/request/AppUserRequest.kt | 12 + .../api/szkolny/response/UpdateResponse.kt | 15 + .../edziennik/data/api/task/AppSync.kt | 49 ++ .../edziennik/data/api/task/Notifications.kt | 277 +++++++++++ .../edziennik/data/api/task/NotifyTask.kt | 90 ---- .../data/api/task/PostNotifications.kt | 169 +++++++ .../edziennik/data/api/task/SzkolnyTask.kt | 54 +- .../data/db/dao/AnnouncementDao.java | 12 +- .../edziennik/data/db/dao/AttendanceDao.java | 15 +- .../edziennik/data/db/dao/EventDao.java | 30 +- .../edziennik/data/db/dao/EventTypeDao.java | 9 +- .../edziennik/data/db/dao/GradeDao.java | 7 + .../edziennik/data/db/dao/LibrusLessonDao.kt | 3 + .../edziennik/data/db/dao/LuckyNumberDao.java | 8 +- .../edziennik/data/db/dao/MessageDao.java | 12 +- .../edziennik/data/db/dao/MetadataDao.java | 6 + .../edziennik/data/db/dao/NoticeDao.java | 14 +- .../edziennik/data/db/dao/ProfileDao.kt | 7 +- .../edziennik/data/db/dao/TimetableDao.kt | 14 + .../edziennik/data/db/entity/Event.java | 38 +- .../edziennik/data/db/entity/Notification.kt | 35 +- .../edziennik/data/db/entity/Profile.kt | 10 +- .../edziennik/data/db/full/EventFull.java | 29 ++ .../data/firebase/FirebaseService.kt | 17 +- .../firebase/MyFirebaseMessagingService.java | 124 +---- .../data/firebase/SzkolnyAppFirebase.kt | 124 ++++- .../data/firebase/SzkolnyLibrusFirebase.kt | 2 +- .../firebase/SzkolnyMobidziennikFirebase.kt | 2 +- .../edziennik/network/NetworkUtils.java | 4 +- .../edziennik/network/ServerRequest.java | 22 +- .../edziennik/receivers/BootReceiver.java | 287 ----------- .../edziennik/receivers/SzkolnyReceiver.kt | 2 +- .../edziennik/sync/SyncWorker.kt | 37 +- .../edziennik/sync/UpdateDownloaderService.kt | 120 +++++ .../edziennik/sync/UpdateWorker.kt | 133 +++++ .../edziennik/sync/WorkerUtils.kt | 54 ++ .../ui/dialogs/changelog/ChangelogDialog.kt | 2 +- .../ui/dialogs/event/EventManualDialog.kt | 16 +- .../ui/dialogs/grade/GradeDetailsDialog.java | 6 +- .../lessonchange/LessonChangeDialog.java | 2 +- .../dialogs/settings/ProfileRemoveDialog.kt | 48 +- .../ui/dialogs/sync/SyncViewListDialog.kt | 2 +- .../dialogs/timetable/LessonDetailsDialog.kt | 3 + .../ui/modules/agenda/AgendaFragment.java | 36 +- .../announcements/AnnouncementsFragment.java | 24 +- .../modules/attendance/AttendanceAdapter.java | 2 +- .../attendance/AttendanceFragment.java | 22 +- .../ui/modules/base/CrashGtfoActivity.java | 4 +- .../ui/modules/base/DebugFragment.java | 18 +- .../modules/behaviour/BehaviourFragment.java | 10 +- .../ui/modules/feedback/FeedbackActivity.java | 33 +- .../ui/modules/feedback/FeedbackFragment.kt | 7 +- .../ui/modules/grades/GradesFragment.java | 49 +- .../ui/modules/grades/GradesListAdapter.java | 4 +- .../modules/grades/GradesSubjectAdapter.java | 22 +- .../edziennik/ui/modules/home/HomeFragment.kt | 4 +- .../ui/modules/home/cards/HomeDebugCard.kt | 2 +- .../ui/modules/home/cards/HomeGradesCard.kt | 4 +- .../modules/home/cards/HomeLuckyNumberCard.kt | 2 +- .../modules/home/cards/HomeTimetableCard.kt | 4 +- .../ui/modules/homework/HomeworkAdapter.java | 2 +- .../modules/intro/ChangelogIntroActivity.java | 2 +- .../ui/modules/login/LoginChooserFragment.kt | 2 +- .../ui/modules/login/LoginFinishFragment.kt | 40 +- .../ui/modules/login/LoginProgressFragment.kt | 2 +- .../ui/modules/login/LoginSyncFragment.kt | 28 +- .../ui/modules/messages/MessageFragment.kt | 2 +- .../messages/MessagesComposeFragment.kt | 4 +- .../messages/MessagesListFragment.java | 12 +- .../modules/settings/SettingsNewFragment.java | 282 +++++------ .../modules/timetable/TimetableDayFragment.kt | 4 +- .../webpush/WebPushConfigActivity.java | 299 ----------- .../ui/widgets/LessonDialogActivity.kt | 3 +- .../ui/widgets/WidgetConfigActivity.java | 14 +- .../WidgetNotificationsFactory.kt | 2 +- .../timetable/WidgetTimetableProvider.kt | 4 +- .../edziennik/utils/MutableLazy.kt | 35 ++ .../szczodrzynski/edziennik/utils/Utils.java | 2 +- .../luckynumber/WidgetLuckyNumber.java | 234 --------- app/src/main/res/layout/dialog_day.xml | 1 + .../main/res/layout/dialog_lesson_details.xml | 5 +- .../res/layout/messages_compose_fragment.xml | 3 +- app/src/main/res/layout/web_push_fragment.xml | 7 +- app/src/main/res/values-en/strings.xml | 24 +- app/src/main/res/values/plurals.xml | 72 +++ app/src/main/res/values/strings.xml | 24 +- build.gradle | 43 +- cafebar/build.gradle | 12 +- material-about-library/build.gradle | 10 +- mhttp/build.gradle | 6 +- nachos/build.gradle | 4 +- settings.gradle | 2 +- szkolny-font/build.gradle | 11 +- 131 files changed, 2429 insertions(+), 2880 deletions(-) rename app/src/main/java/pl/szczodrzynski/edziennik/{App.java => AppOld.java} (72%) delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/Notifier.java create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/config/ProfileConfigUI.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/config/utils/AppConfigMigrationV3.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/DataNotifications.kt rename app/src/main/java/pl/szczodrzynski/edziennik/data/api/{task => edziennik}/EdziennikTask.kt (97%) create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/events/ProfileListEmptyEvent.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/Szkolny.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/request/AppUserRequest.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/response/UpdateResponse.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/task/AppSync.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/task/Notifications.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/task/NotifyTask.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/data/api/task/PostNotifications.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/receivers/BootReceiver.java create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/sync/UpdateDownloaderService.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/sync/UpdateWorker.kt create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/sync/WorkerUtils.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/webpush/WebPushConfigActivity.java create mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/utils/MutableLazy.kt delete mode 100644 app/src/main/java/pl/szczodrzynski/edziennik/widgets/luckynumber/WidgetLuckyNumber.java diff --git a/agendacalendarview/build.gradle b/agendacalendarview/build.gradle index 824ce517..92731fb9 100644 --- a/agendacalendarview/build.gradle +++ b/agendacalendarview/build.gradle @@ -2,7 +2,7 @@ apply plugin: 'com.android.library' //apply plugin: 'me.tatarka.retrolambda' android { - compileSdkVersion rootProject.ext.compileSdkVersion + compileSdkVersion setup.compileSdk android { lintOptions { @@ -12,7 +12,7 @@ android { defaultConfig { minSdkVersion 14 - targetSdkVersion rootProject.ext.targetSdkVersion + targetSdkVersion setup.targetSdk versionCode 1 versionName "1.0" } @@ -43,9 +43,9 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) // Google libraries - implementation "androidx.appcompat:appcompat:${androidXAppCompat}" - implementation "androidx.recyclerview:recyclerview:${androidXRecyclerView}" - implementation "com.google.android.material:material:${googleMaterial}" + implementation "androidx.appcompat:appcompat:${versions.appcompat}" + implementation "androidx.recyclerview:recyclerview:${versions.recyclerView}" + implementation "com.google.android.material:material:${versions.material}" // other libraries //implementation 'se.emilsjolander:stickylistheaders:2.7.0' diff --git a/app/build.gradle b/app/build.gradle index f7131927..f034b276 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,14 @@ apply plugin: 'com.android.application' -apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android' +apply plugin: 'kotlin-kapt' +apply plugin: 'kotlin-android-extensions' apply plugin: 'com.google.gms.google-services' apply plugin: 'io.fabric' android { signingConfigs { } - compileSdkVersion rootProject.ext.compileSdkVersion + compileSdkVersion setup.compileSdk defaultConfig { applicationId 'pl.szczodrzynski.edziennik' minSdkVersion setup.minSdk @@ -103,7 +104,7 @@ tasks.whenTaskAdded { task -> dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - annotationProcessor "androidx.room:room-compiler:${versions.room}" + kapt "androidx.room:room-compiler:${versions.room}" debugImplementation "com.amitshekhar.android:debug-db:1.0.5" implementation "android.arch.navigation:navigation-fragment-ktx:${versions.navigationFragment}" diff --git a/app/proguard/app.pro b/app/proguard/app.pro index 65817554..cad3fa17 100644 --- a/app/proguard/app.pro +++ b/app/proguard/app.pro @@ -28,7 +28,7 @@ -keepclassmembers class pl.szczodrzynski.edziennik.ui.widgets.WidgetConfig { public *; } -keepnames class pl.szczodrzynski.edziennik.ui.widgets.timetable.WidgetTimetableProvider -keepnames class pl.szczodrzynski.edziennik.ui.widgets.notifications.WidgetNotificationsProvider --keepnames class pl.szczodrzynski.edziennik.widgets.luckynumber.WidgetLuckyNumber +-keepnames class pl.szczodrzynski.edziennik.ui.widgets.luckynumber.WidgetLuckyNumberProvider -keep class .R -keep class **.R$* { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 87d87c67..ce47405c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -80,6 +80,7 @@ - - + - - - @@ -200,8 +188,6 @@ --> - - @@ -210,6 +196,7 @@ + + xmlns:tools="http://schemas.android.com/tools" + xmlns:app="http://schemas.android.com/apk/res-auto"> @@ -85,13 +86,13 @@ android:text="Połączone przeglądarki" android:textSize="24sp" /> - Notification Absence Excused absence - School announcement: %s + School announcement from %s: %s %1$s on lesson %2$s on day %3$s %1$s on day %3$s Late Excused late - Notification about data downloading - Downloading data - Notification about new data in the e-register + Notification about data sync progress + Synchronisation + Notifications about new data in the e-register Notifications - Notification about new data in the e-register (no sound) - Notifications (quiet) + Notifications about new data in the e-register (no sound - during quiet hours) + Notifications (quiet hours) Notifications about new versions of the app App updates Downloading update… @@ -476,12 +476,12 @@ New grade (%s) from %s Homework from %s for %s Homework for %s - Today %d is the lucky number. - The lucky number for %s is %d. - The lucky number for tomorrow is %d. - You are the Lucky number today! (%d) - %s you will have the Lucky number! (%d) - Tomorrow it\'s your Lucky number! (%d) + Today %2$d is the lucky number. + The lucky number for %1$s is %2$d. + The lucky number for tomorrow is %2$d. + You are the lucky number today! (%2$d) + %1$s you will have the lucky number! (%2$d) + Tomorrow it\'s your lucky number! (%2$d) Unread message from %s: %s New notifications: %d No update available diff --git a/app/src/main/res/values/plurals.xml b/app/src/main/res/values/plurals.xml index 8e7275b2..83845ec9 100644 --- a/app/src/main/res/values/plurals.xml +++ b/app/src/main/res/values/plurals.xml @@ -81,4 +81,76 @@ %d błędów %d błędów + + + Szkolny.eu: %d nowe powiadomienie + Szkolny.eu: %d nowe powiadomienia + Szkolny.eu: %d nowych powiadomień + + + %d nowe powiadomienie + %d nowe powiadomienia + %d nowych powiadomień + + + + %d zmiana planu lekcji + %d zmiany planu lekcji + %d zmian planu lekcji + + + %d nowa ocena + %d nowe oceny + %d nowych ocen + + + %d nowe wydarzenie + %d nowe wydarzenia + %d nowych wydarzeń + + + %d nowe zadanie domowe + %d nowe zadania domowe + %d nowych zadań domowych + + + %d udostępnione wydarzenie + %d udostępnione wydarzenia + %d udostępnionych wydarzeń + + + %d udostępnione zadanie domowe + %d udostępnione zadania domowe + %d udostępnionych zadań domowych + + + %d nowa wiadomość + %d nowe wiadomości + %d nowych wiadomości + + + %d nowa uwaga + %d nowe uwagi + %d nowych uwag + + + %d nowy wpis frekwencji + %d nowe wpisy frekwencji + %d nowych wpisów frekwencji + + + szczęśliwy numerek + %d szczęśliwe numerki + %d szczęśliwych numerków + + + %d nowe ogłoszenie + %d nowe ogłoszenia + %d nowych ogłoszeń + + + %d inne powiadomienie + %d inne powiadomienia + %d innych powiadomień + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 518a03b9..8c058188 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -509,7 +509,7 @@ Powiadomienie Nieobecność Nieobecność usprawiedliwiona - Ogłoszenie szkolne: %s + Ogłoszenie szkolne od %s: %s %1$s na lekcji %2$s z dnia %3$s %1$s z dnia %3$s Spóźnienie @@ -518,8 +518,8 @@ Pobieranie danych Powiadomienie o nowej zawartości w e-dzienniku Powiadomienia - Powiadomienie o nowej zawartości w e-dzienniku (bez dźwięku) - Powiadomienia (cisza) + Powiadomienie o nowej zawartości w e-dzienniku (bez dźwięku - podczas ciszy nocnej) + Powiadomienia (cisza nocna) Powiadomienia o nowych wersjach aplikacji Aktualizacje Pobieranie aktualizacji… @@ -536,13 +536,13 @@ Nowa ocena (%s) z %s Zadanie domowe z %1$s na %2$s Zadanie domowe na %2$s - %s %s - %s - Dzisiaj %d to szczęśliwy numerek. - Szczęsliwy numerek na %s to %d. - Szczęsliwy numerek na jutro to %d. - Dzisiaj to Ty masz szczęśliwy numerek! (%d) - %s to Ty będziesz miał szczęśliwy numerek! (%d) - Jutro to Ty masz szczęśliwy numerek! (%d) + %s dnia %s - %s + Dzisiaj %2$d to szczęśliwy numerek. + Szczęsliwy numerek na %1$s to %2$d. + Szczęsliwy numerek na jutro to %2$d. + Dzisiaj to Ty masz szczęśliwy numerek! (%2$d) + %1$s to Ty będziesz miał szczęśliwy numerek! (%2$d) + Jutro to Ty masz szczęśliwy numerek! (%2$d) Nieodebrana wiadomość od %s: %s Nowe powiadomienia: %d Brak dostępnej aktualizacji @@ -1161,4 +1161,8 @@ Dzień wolny Konfigurowanie natychmiastowych powiadomień... Nie znaleziono aplikacji kalendarza + Tworzenie powiadomień... + Udostępniono zadanie domowe + Usunięto wydarzenie + Kliknij, aby zobaczyć wszystkie powiadomienia diff --git a/build.gradle b/build.gradle index 1943400f..17a6b73c 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ buildscript { ext { - kotlin_version = '1.3.50' + kotlin_version = '1.3.61' release = [ versionName: "4.0-beta.3", @@ -17,27 +17,27 @@ buildscript { ] versions = [ - kotlin : "1.3.50", + kotlin : "1.3.61", ktx : "1.1.0", androidX : '1.0.0', annotation : '1.1.0', - recyclerView : '1.1.0', - material : '1.2.0-alpha02', - appcompat : '1.1.0', - constraintLayout : '2.0.0-beta3', + recyclerView : '1.2.0-alpha01', + material : '1.2.0-alpha03', + appcompat : '1.2.0-alpha01', + constraintLayout : '2.0.0-beta4', cardview : '1.0.0', gridLayout : '1.0.0', navigation : "2.0.0", navigationFragment: "1.0.0", legacy : "1.0.0", - room : "2.2.1", - lifecycle : "2.2.0-rc02", + room : "2.2.3", + lifecycle : "2.2.0-rc03", work : "2.2.0", - firebase : '17.2.1', - firebasemessaging: "20.0.0", + firebase : '17.2.2', + firebasemessaging: "20.1.0", play_services : "17.0.0", materialdialogs : "0.9.6.0", @@ -45,7 +45,7 @@ buildscript { iconics : "4.0.1", font_cmd : "3.5.95.1-kotlin", - navlib : "9c8fb47c52", + navlib : "5c8b13c0d9db0d9e822fdae82c8afca6c01ab41e", gifdrawable : "1.2.15", @@ -61,9 +61,9 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.5.2' + classpath 'com.android.tools.build:gradle:3.5.3' classpath 'me.tatarka:gradle-retrolambda:3.7.0' - classpath 'com.google.gms:google-services:4.3.1' + classpath 'com.google.gms:google-services:4.3.3' classpath 'io.fabric.tools:gradle:1.28.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" @@ -88,23 +88,6 @@ allprojects { } } -ext { - compileSdkVersion = 28 - buildToolsVersion = '28.0.3' - targetSdkVersion = compileSdkVersion - minSdkVersion = 16 - - androidXAppCompat = '1.1.0-beta01' - androidXRecyclerView = '1.1.0-alpha06' - androidXCardView = '1.0.0' - androidXGridLayout = '1.0.0' - androidXConstraintLayout = '1.1.3' - googleMaterial = '1.1.0-alpha07' - - iconics = '4.0.1-b01' - kotlin = '1.3.41' -} - task clean(type: Delete) { delete rootProject.buildDir } diff --git a/cafebar/build.gradle b/cafebar/build.gradle index 31b0b482..4e992077 100644 --- a/cafebar/build.gradle +++ b/cafebar/build.gradle @@ -21,11 +21,11 @@ apply plugin: 'com.android.library' group = 'com.github.danimahardhika' android { - compileSdkVersion rootProject.ext.compileSdkVersion + compileSdkVersion setup.compileSdk defaultConfig { - minSdkVersion rootProject.ext.minSdkVersion - targetSdkVersion rootProject.ext.targetSdkVersion + minSdkVersion 16 + targetSdkVersion setup.targetSdk versionCode 132 versionName "1.3.2" vectorDrawables.useSupportLibrary = true @@ -58,7 +58,7 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation "com.google.android.material:material:${googleMaterial}" - implementation "androidx.cardview:cardview:${androidXCardView}" - implementation "androidx.appcompat:appcompat:${androidXAppCompat}" + implementation "com.google.android.material:material:${versions.material}" + implementation "androidx.cardview:cardview:${versions.cardview}" + implementation "androidx.appcompat:appcompat:${versions.appcompat}" } diff --git a/material-about-library/build.gradle b/material-about-library/build.gradle index 8ff2c558..c79c427c 100644 --- a/material-about-library/build.gradle +++ b/material-about-library/build.gradle @@ -8,11 +8,11 @@ def versionPatch = 0 def versionBuild = 0 // bump for dogfood builds, public betas, etc. android { - compileSdkVersion rootProject.ext.compileSdkVersion + compileSdkVersion setup.compileSdk defaultConfig { minSdkVersion 14 - targetSdkVersion rootProject.ext.targetSdkVersion + targetSdkVersion setup.targetSdk versionCode versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100 + versionBuild versionName "${versionMajor}.${versionMinor}" + (versionPatch == 0 ? "" : ".${versionPatch}") } @@ -32,7 +32,7 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation "androidx.appcompat:appcompat:${androidXAppCompat}" - implementation "androidx.cardview:cardview:${androidXCardView}" - implementation "com.google.android.material:material:${googleMaterial}" + implementation "androidx.appcompat:appcompat:${versions.appcompat}" + implementation "androidx.cardview:cardview:${versions.cardview}" + implementation "com.google.android.material:material:${versions.material}" } diff --git a/mhttp/build.gradle b/mhttp/build.gradle index a7863eb6..a17c5b48 100644 --- a/mhttp/build.gradle +++ b/mhttp/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'com.android.library' android { - compileSdkVersion rootProject.ext.compileSdkVersion + compileSdkVersion setup.compileSdk defaultConfig { minSdkVersion 9 - targetSdkVersion rootProject.ext.targetSdkVersion + targetSdkVersion setup.targetSdk consumerProguardFiles 'proguard-rules.pro' versionCode 1 versionName PROJ_VERSION @@ -40,7 +40,7 @@ android { } dependencies { - compileOnly "androidx.appcompat:appcompat:${androidXAppCompat}" + compileOnly "androidx.appcompat:appcompat:${versions.appcompat}" compileOnly 'io.reactivex.rxjava2:rxjava:2.1.3' api 'com.squareup.okhttp3:okhttp:3.12.0' api 'com.google.code.gson:gson:2.8.5' diff --git a/nachos/build.gradle b/nachos/build.gradle index cd4d8235..821a4a83 100644 --- a/nachos/build.gradle +++ b/nachos/build.gradle @@ -1,11 +1,11 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 28 + compileSdkVersion setup.compileSdk defaultConfig { minSdkVersion 15 - targetSdkVersion 28 + targetSdkVersion setup.targetSdk versionCode 1 versionName "1.0" } diff --git a/settings.gradle b/settings.gradle index 22213b80..d2e0a356 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,5 +1,5 @@ rootProject.name='Szkolny.eu' -include ':app', ':agendacalendarview', ':mhttp', ':material-about-library', ':cafebar', ':szkolny-font', ':nachos', ':community-material' +include ':app', ':agendacalendarview', ':mhttp', ':material-about-library', ':cafebar', ':szkolny-font', ':nachos' /* include ':Navigation' project(':Navigation').projectDir = new File(settingsDir, '../Navigation/navlib')*/ diff --git a/szkolny-font/build.gradle b/szkolny-font/build.gradle index 02d6e56b..70d20b0d 100644 --- a/szkolny-font/build.gradle +++ b/szkolny-font/build.gradle @@ -19,12 +19,11 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' android { - compileSdkVersion rootProject.ext.compileSdkVersion - buildToolsVersion rootProject.ext.buildToolsVersion + compileSdkVersion setup.compileSdk defaultConfig { - minSdkVersion rootProject.ext.minSdkVersion - targetSdkVersion rootProject.ext.targetSdkVersion + minSdkVersion setup.minSdk + targetSdkVersion setup.targetSdk consumerProguardFiles 'consumer-proguard-rules.pro' versionCode 11 versionName "1.1" @@ -46,6 +45,6 @@ if (project.hasProperty('pushall') || project.hasProperty('SzkolnyFontonly')) { } dependencies { - implementation "com.mikepenz:iconics-core:${iconics}" - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" + implementation "com.mikepenz:iconics-core:${versions.iconics}" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${versions.kotlin}" }