From f4e7e8978c9e32ceff9826e35dca684aec63320f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Sun, 18 Sep 2022 22:52:43 +0200 Subject: [PATCH 1/8] [API/Vulcan] Ensure messageBoxKey before syncing addressbook. --- .../data/api/edziennik/vulcan/VulcanFeatures.kt | 4 ++-- .../vulcan/data/hebe/VulcanHebeAddressbook2.kt | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/VulcanFeatures.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/VulcanFeatures.kt index 857a596e..4def0214 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/VulcanFeatures.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/VulcanFeatures.kt @@ -12,7 +12,7 @@ const val ENDPOINT_VULCAN_WEB_LUCKY_NUMBERS = 2010 const val ENDPOINT_VULCAN_HEBE_MAIN = 3000 const val ENDPOINT_VULCAN_HEBE_PUSH_CONFIG = 3005 const val ENDPOINT_VULCAN_HEBE_ADDRESSBOOK = 3010 -const val ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2 = 3011 +const val ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2 = 3501 // after message boxes (3500) const val ENDPOINT_VULCAN_HEBE_TIMETABLE = 3020 const val ENDPOINT_VULCAN_HEBE_EXAMS = 3030 const val ENDPOINT_VULCAN_HEBE_GRADES = 3040 @@ -87,8 +87,8 @@ val VulcanFeatures = listOf( Feature(LOGIN_TYPE_VULCAN, FEATURE_ALWAYS_NEEDED, listOf( ENDPOINT_VULCAN_HEBE_MAIN to LOGIN_METHOD_VULCAN_HEBE, ENDPOINT_VULCAN_HEBE_ADDRESSBOOK to LOGIN_METHOD_VULCAN_HEBE, - ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2 to LOGIN_METHOD_VULCAN_HEBE, ENDPOINT_VULCAN_HEBE_TEACHERS to LOGIN_METHOD_VULCAN_HEBE, ENDPOINT_VULCAN_HEBE_MESSAGE_BOXES to LOGIN_METHOD_VULCAN_HEBE, + ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2 to LOGIN_METHOD_VULCAN_HEBE, ), listOf(LOGIN_METHOD_VULCAN_HEBE)) ) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeAddressbook2.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeAddressbook2.kt index 1a6606d0..2ac843a2 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeAddressbook2.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeAddressbook2.kt @@ -14,6 +14,7 @@ import pl.szczodrzynski.edziennik.data.db.entity.Teacher.Companion.TYPE_PARENT import pl.szczodrzynski.edziennik.data.db.entity.Teacher.Companion.TYPE_STUDENT import pl.szczodrzynski.edziennik.data.db.entity.Teacher.Companion.TYPE_TEACHER import pl.szczodrzynski.edziennik.ext.DAY +import pl.szczodrzynski.edziennik.ext.MINUTE import pl.szczodrzynski.edziennik.ext.getString class VulcanHebeAddressbook2( @@ -25,7 +26,13 @@ class VulcanHebeAddressbook2( const val TAG = "VulcanHebeAddressbook2" } - init { + init { let { + if (data.messageBoxKey == null) { + data.setSyncNext(ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2, 30 * MINUTE) + onSuccess(ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2) + return@let + } + apiGetList( TAG, VULCAN_HEBE_ENDPOINT_MESSAGEBOX_ADDRESSBOOK, @@ -50,5 +57,5 @@ class VulcanHebeAddressbook2( data.setSyncNext(ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2, 2 * DAY) onSuccess(ENDPOINT_VULCAN_HEBE_ADDRESSBOOK_2) } - } + }} } From 8e5f750a80248104d4c1efad7c9445f2eecc5956 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Sun, 18 Sep 2022 23:05:46 +0200 Subject: [PATCH 2/8] [Manifest] Remove APK install to comply with Google Play policies. --- app/build.gradle | 2 ++ app/src/main/AndroidManifest.xml | 1 - app/src/play-not/AndroidManifest.xml | 5 +++++ 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 app/src/play-not/AndroidManifest.xml diff --git a/app/build.gradle b/app/build.gradle index 2c525d23..57334e8f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -70,9 +70,11 @@ android { sourceSets { unofficial { java.srcDirs = ["src/main/java", "src/play-not/java"] + manifest.srcFile("src/play-not/AndroidManifest.xml") } official { java.srcDirs = ["src/main/java", "src/play-not/java"] + manifest.srcFile("src/play-not/AndroidManifest.xml") } play { java.srcDirs = ["src/main/java", "src/play/java"] diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2635faf7..c5c273b4 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,7 +3,6 @@ xmlns:tools="http://schemas.android.com/tools" package="pl.szczodrzynski.edziennik"> - diff --git a/app/src/play-not/AndroidManifest.xml b/app/src/play-not/AndroidManifest.xml new file mode 100644 index 00000000..a8cdcffd --- /dev/null +++ b/app/src/play-not/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + + + From cdc0c9d45830871b74b3b58486aeb28143613c38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Sun, 18 Sep 2022 23:06:41 +0200 Subject: [PATCH 3/8] [4.11.9] Update build.gradle, signing and changelog. --- app/src/main/assets/pl-changelog.html | 2 +- app/src/main/cpp/szkolny-signing.cpp | 2 +- .../edziennik/data/api/szkolny/interceptor/Signing.kt | 2 +- build.gradle | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/assets/pl-changelog.html b/app/src/main/assets/pl-changelog.html index 3164d7dc..80680d26 100644 --- a/app/src/main/assets/pl-changelog.html +++ b/app/src/main/assets/pl-changelog.html @@ -1,4 +1,4 @@ -

Wersja 4.11.8, 2022-09-17

+

Wersja 4.11.9, 2022-09-18

  • Vulcan UONET+: naprawiono działanie systemu wiadomości. @Antoni-Czaplicki
  • Poprawiono wyświetlanie lekcji odwołanych na stronie głównej.
  • diff --git a/app/src/main/cpp/szkolny-signing.cpp b/app/src/main/cpp/szkolny-signing.cpp index 35e96eb0..73c92738 100644 --- a/app/src/main/cpp/szkolny-signing.cpp +++ b/app/src/main/cpp/szkolny-signing.cpp @@ -9,7 +9,7 @@ /*secret password - removed for source code publication*/ static toys AES_IV[16] = { - 0xb2, 0x96, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + 0x50, 0x1a, 0x1e, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; unsigned char *agony(unsigned int laugh, unsigned char *box, unsigned char *heat); diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt index d4cff130..1236450a 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt @@ -46,6 +46,6 @@ object Signing { /*fun provideKey(param1: String, param2: Long): ByteArray {*/ fun pleaseStopRightNow(param1: String, param2: Long): ByteArray { - return "$param1.MTIzNDU2Nzg5MDYFZwkReL===.$param2".sha256() + return "$param1.MTIzNDU2Nzg5MDqhAT3mMQ===.$param2".sha256() } } diff --git a/build.gradle b/build.gradle index 3088163b..eccc6716 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { kotlin_version = '1.6.10' release = [ - versionName: "4.11.8", - versionCode: 4110899 + versionName: "4.11.9", + versionCode: 4110999 ] setup = [ From 7711413b30ccb1c32726a3adfcb16edcb178f54f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Wed, 21 Sep 2022 20:43:18 +0200 Subject: [PATCH 4/8] [API/Vulcan] Fix getting MessageBoxes and changing message read status. --- .../vulcan/data/hebe/VulcanHebeMessageBoxes.kt | 10 +++++++++- .../edziennik/vulcan/data/hebe/VulcanHebeMessages.kt | 5 ++--- .../vulcan/data/hebe/VulcanHebeMessagesChangeStatus.kt | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessageBoxes.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessageBoxes.kt index e1c03aff..df6613ba 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessageBoxes.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessageBoxes.kt @@ -26,16 +26,24 @@ class VulcanHebeMessageBoxes( VULCAN_HEBE_ENDPOINT_MESSAGEBOX, lastSync = lastSync ) { list, _ -> + var found = false for (messageBox in list) { val name = messageBox.getString("Name") ?: continue val studentName = profile?.studentNameLong ?: continue - if (!name.startsWith(studentName)) + if (!name.contains(studentName)) continue data.messageBoxKey = messageBox.getString("GlobalKey") data.messageBoxName = name + found = true break } + if (!found && list.isNotEmpty()) { + list.firstOrNull()?.let { messageBox -> + data.messageBoxKey = messageBox.getString("GlobalKey") + data.messageBoxName = messageBox.getString("Name") + } + } data.setSyncNext(ENDPOINT_VULCAN_HEBE_MESSAGE_BOXES, 7 * DAY) onSuccess(ENDPOINT_VULCAN_HEBE_MESSAGE_BOXES) } diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessages.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessages.kt index 29f37e62..affca1e1 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessages.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessages.kt @@ -98,9 +98,6 @@ class VulcanHebeMessages( val receivers = message.getJsonArray("Receiver") ?.asJsonObjectList() ?: return@forEach - val receiverReadDate = - if (receivers.size == 1) readDate - else -1 for (receiver in receivers) { val recipientId = if (messageType == TYPE_SENT) @@ -108,6 +105,8 @@ class VulcanHebeMessages( else -1 + val receiverReadDate = receiver.getLong("HasRead", -1) + val messageRecipientObject = MessageRecipient( profileId, recipientId, diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessagesChangeStatus.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessagesChangeStatus.kt index f0090a9c..2144a768 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessagesChangeStatus.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/edziennik/vulcan/data/hebe/VulcanHebeMessagesChangeStatus.kt @@ -24,7 +24,7 @@ class VulcanHebeMessagesChangeStatus( } init { let { - val messageKey = messageObject.body?.let { data.parseMessageMeta(it) }?.get("globalKey") ?: run { + val messageKey = messageObject.body?.let { data.parseMessageMeta(it) }?.get("uuid") ?: run { EventBus.getDefault().postSticky(MessageGetEvent(messageObject)) onSuccess() return@let From 6fd999f88cc2d8b711e00e9d1a111d75ce7849a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Wed, 21 Sep 2022 21:02:09 +0200 Subject: [PATCH 5/8] [UI/Widget] Fix showing lesson details dialog. --- .../edziennik/ui/widgets/timetable/WidgetTimetableProvider.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/widgets/timetable/WidgetTimetableProvider.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/widgets/timetable/WidgetTimetableProvider.kt index 87da09a8..60eeb6cc 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/widgets/timetable/WidgetTimetableProvider.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/widgets/timetable/WidgetTimetableProvider.kt @@ -409,7 +409,7 @@ class WidgetTimetableProvider : AppWidgetProvider() { // create an intent used to display the lesson details dialog val itemIntent = Intent(app, LessonDialogActivity::class.java) itemIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK/* or Intent.FLAG_ACTIVITY_CLEAR_TASK*/) - val itemPendingIntent = PendingIntent.getActivity(app, appWidgetId, itemIntent, pendingIntentFlag()) + val itemPendingIntent = PendingIntent.getActivity(app, appWidgetId, itemIntent, PendingIntent.FLAG_MUTABLE) views.setPendingIntentTemplate(R.id.widgetTimetableListView, itemPendingIntent) if (!unified) From 11fabb231fca8019c7453ad816d0e052cfdc8c91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Wed, 21 Sep 2022 21:09:23 +0200 Subject: [PATCH 6/8] [4.12] Update build.gradle, signing and changelog. --- app/src/main/assets/pl-changelog.html | 3 ++- app/src/main/cpp/szkolny-signing.cpp | 2 +- .../edziennik/data/api/szkolny/interceptor/Signing.kt | 2 +- build.gradle | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/src/main/assets/pl-changelog.html b/app/src/main/assets/pl-changelog.html index 80680d26..26e6b29f 100644 --- a/app/src/main/assets/pl-changelog.html +++ b/app/src/main/assets/pl-changelog.html @@ -1,6 +1,7 @@ -

    Wersja 4.11.9, 2022-09-18

    +

    Wersja 4.12, 2022-09-21

    • Vulcan UONET+: naprawiono działanie systemu wiadomości. @Antoni-Czaplicki
    • +
    • Vulcan UONET+: naprawiono błędy wersji 4.11.9 i starszych.
    • Poprawiono wyświetlanie lekcji odwołanych na stronie głównej.
    • Dodano dostęp do Laboratorium na ekranie logowania.
    • Usunięto obsługę dziennika EduDziennik. [*]
    • diff --git a/app/src/main/cpp/szkolny-signing.cpp b/app/src/main/cpp/szkolny-signing.cpp index 73c92738..d1afa130 100644 --- a/app/src/main/cpp/szkolny-signing.cpp +++ b/app/src/main/cpp/szkolny-signing.cpp @@ -9,7 +9,7 @@ /*secret password - removed for source code publication*/ static toys AES_IV[16] = { - 0x50, 0x1a, 0x1e, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + 0x9f, 0x7e, 0x7a, 0xcd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; unsigned char *agony(unsigned int laugh, unsigned char *box, unsigned char *heat); diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt index 1236450a..79ccf534 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt @@ -46,6 +46,6 @@ object Signing { /*fun provideKey(param1: String, param2: Long): ByteArray {*/ fun pleaseStopRightNow(param1: String, param2: Long): ByteArray { - return "$param1.MTIzNDU2Nzg5MDqhAT3mMQ===.$param2".sha256() + return "$param1.MTIzNDU2Nzg5MDRaOIVjKV===.$param2".sha256() } } diff --git a/build.gradle b/build.gradle index eccc6716..1f505e33 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { kotlin_version = '1.6.10' release = [ - versionName: "4.11.9", - versionCode: 4110999 + versionName: "4.12", + versionCode: 4120099 ] setup = [ From 6d36ab27d1e388db59a88c97895150f9e8e7fb36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Fri, 23 Sep 2022 11:30:23 +0200 Subject: [PATCH 7/8] [UI/Login] Fix QR scanning icon not showing. --- .../pl/szczodrzynski/edziennik/ui/login/LoginFormFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/login/LoginFormFragment.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/login/LoginFormFragment.kt index 819acbbd..3c5a26ca 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/login/LoginFormFragment.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/login/LoginFormFragment.kt @@ -156,12 +156,12 @@ class LoginFormFragment : Fragment(), CoroutineScope { } if (credential.qrDecoderClass != null) { + b.textLayout.endIconMode = TextInputLayout.END_ICON_CUSTOM b.textLayout.endIconDrawable = IconicsDrawable(activity).apply { icon = CommunityMaterial.Icon3.cmd_qrcode sizeDp = 24 colorAttr(activity, R.attr.colorOnBackground) } - b.textLayout.endIconMode = TextInputLayout.END_ICON_CUSTOM b.textLayout.setEndIconOnClickListener { scanQrCode(credential) } From 132729bbd92142d49277e3533fea8f7453ae1a76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Fri, 23 Sep 2022 11:32:08 +0200 Subject: [PATCH 8/8] [4.12.1] Update build.gradle, signing and changelog. --- app/src/main/assets/pl-changelog.html | 2 +- app/src/main/cpp/szkolny-signing.cpp | 2 +- .../edziennik/data/api/szkolny/interceptor/Signing.kt | 2 +- build.gradle | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/main/assets/pl-changelog.html b/app/src/main/assets/pl-changelog.html index 26e6b29f..2548b456 100644 --- a/app/src/main/assets/pl-changelog.html +++ b/app/src/main/assets/pl-changelog.html @@ -1,4 +1,4 @@ -

      Wersja 4.12, 2022-09-21

      +

      Wersja 4.12.1, 2022-09-23

      • Vulcan UONET+: naprawiono działanie systemu wiadomości. @Antoni-Czaplicki
      • Vulcan UONET+: naprawiono błędy wersji 4.11.9 i starszych.
      • diff --git a/app/src/main/cpp/szkolny-signing.cpp b/app/src/main/cpp/szkolny-signing.cpp index d1afa130..639ca56e 100644 --- a/app/src/main/cpp/szkolny-signing.cpp +++ b/app/src/main/cpp/szkolny-signing.cpp @@ -9,7 +9,7 @@ /*secret password - removed for source code publication*/ static toys AES_IV[16] = { - 0x9f, 0x7e, 0x7a, 0xcd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + 0xdf, 0xe4, 0x2d, 0xa3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; unsigned char *agony(unsigned int laugh, unsigned char *box, unsigned char *heat); diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt index 79ccf534..24f28c3c 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/szkolny/interceptor/Signing.kt @@ -46,6 +46,6 @@ object Signing { /*fun provideKey(param1: String, param2: Long): ByteArray {*/ fun pleaseStopRightNow(param1: String, param2: Long): ByteArray { - return "$param1.MTIzNDU2Nzg5MDRaOIVjKV===.$param2".sha256() + return "$param1.MTIzNDU2Nzg5MDJgAI/q8c===.$param2".sha256() } } diff --git a/build.gradle b/build.gradle index 1f505e33..7b8133d1 100644 --- a/build.gradle +++ b/build.gradle @@ -5,8 +5,8 @@ buildscript { kotlin_version = '1.6.10' release = [ - versionName: "4.12", - versionCode: 4120099 + versionName: "4.12.1", + versionCode: 4120199 ] setup = [