From 177acaddfea199b51c3d2133885e45b9dc564e72 Mon Sep 17 00:00:00 2001 From: yattoz <12408848+yattoz@users.noreply.github.com> Date: Thu, 27 Feb 2020 20:47:25 +0100 Subject: [PATCH 1/6] Use ExoPlayer 2.11.3 (no need for submodule anymore) --- .idea/gradle.xml | 22 ---------------------- .idea/vcs.xml | 1 - ExoPlayer | 1 - app/build.gradle | 8 ++++---- settings.gradle | 4 ---- 5 files changed, 4 insertions(+), 32 deletions(-) delete mode 160000 ExoPlayer diff --git a/.idea/gradle.xml b/.idea/gradle.xml index add6ddc..169fd0d 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -8,28 +8,6 @@ diff --git a/.idea/vcs.xml b/.idea/vcs.xml index 257ba1f..35eb1dd 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -2,6 +2,5 @@ - \ No newline at end of file diff --git a/ExoPlayer b/ExoPlayer deleted file mode 160000 index 24a1926..0000000 --- a/ExoPlayer +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 24a19264dbf35e326bbd7bb36c232eb180e1e26d diff --git a/app/build.gradle b/app/build.gradle index d658187..19669a3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -69,11 +69,11 @@ dependencies { */ implementation "androidx.media:media:1.1.0" - //implementation 'com.google.android.exoplayer:exoplayer:2.11.1' - implementation project(':exoplayer-library') // uses local ExoPlayer clone, from dev-v2 branch (fixes ISO-8859-1 ICY metadata + implementation 'com.google.android.exoplayer:exoplayer:2.11.3' + //implementation project(':exoplayer-library') // uses local ExoPlayer clone, from dev-v2 branch (fixes ISO-8859-1 ICY metadata - implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0' - implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.1.0' + implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' + implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0' implementation 'androidx.recyclerview:recyclerview:1.1.0' implementation 'androidx.preference:preference:1.1.0' diff --git a/settings.gradle b/settings.gradle index 79be6ca..6bfed1f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,6 +1,2 @@ include ':app' rootProject.name='Tsumugi-app' - -gradle.ext.exoplayerRoot = './ExoPlayer' -gradle.ext.exoplayerModulePrefix = 'exoplayer-' -apply from: new File(gradle.ext.exoplayerRoot, 'core_settings.gradle') From f2f338f1d4850f177021a5e4316bde3675e5640b Mon Sep 17 00:00:00 2001 From: yattoz <12408848+yattoz@users.noreply.github.com> Date: Thu, 27 Feb 2020 21:02:40 +0100 Subject: [PATCH 2/6] Fix : autoplay as setting, sensor to fullUser, close button, keep volume --- app/src/main/AndroidManifest.xml | 2 +- .../tsumugi/NowPlayingNotification.kt | 4 ++-- .../java/fr/forum_thalie/tsumugi/RadioService.kt | 2 +- .../tsumugi/ui/nowplaying/NowPlayingViewModel.kt | 6 ++++++ app/src/main/res/drawable-anydpi/ic_close.xml | 11 +++++++++++ app/src/main/res/drawable-hdpi/ic_close.png | Bin 0 -> 205 bytes app/src/main/res/drawable-mdpi/ic_close.png | Bin 0 -> 157 bytes app/src/main/res/drawable-xhdpi/ic_close.png | Bin 0 -> 235 bytes app/src/main/res/drawable-xxhdpi/ic_close.png | Bin 0 -> 318 bytes app/src/main/res/values-fr/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + app/src/main/res/xml/customize_preferences.xml | 10 +++++++++- 12 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 app/src/main/res/drawable-anydpi/ic_close.xml create mode 100644 app/src/main/res/drawable-hdpi/ic_close.png create mode 100644 app/src/main/res/drawable-mdpi/ic_close.png create mode 100644 app/src/main/res/drawable-xhdpi/ic_close.png create mode 100644 app/src/main/res/drawable-xxhdpi/ic_close.png diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7e20574..4bb94a6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -48,7 +48,7 @@ android:configChanges="orientation|screenSize" android:label="@string/app_name" android:launchMode="singleTask" - android:screenOrientation="fullSensor"> + android:screenOrientation="fullUser"> diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/NowPlayingNotification.kt b/app/src/main/java/fr/forum_thalie/tsumugi/NowPlayingNotification.kt index 2c8d0d4..c5c6b63 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/NowPlayingNotification.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/NowPlayingNotification.kt @@ -39,7 +39,7 @@ class NowPlayingNotification( mediaStyle = androidx.media.app.NotificationCompat.DecoratedMediaCustomViewStyle().also { it.setMediaSession(m.sessionToken) - it.setShowActionsInCompactView(0) // index 0 = show actions 0 and 1 (show action #0 (play/pause)) + it.setShowActionsInCompactView(0, 1) // index 0 = show actions 0 and 1 (show action #0 (play/pause)) it.setCancelButtonIntent(deleteIntent) } builder.setStyle(mediaStyle) @@ -83,7 +83,7 @@ class NowPlayingNotification( val intent2 = Intent(c, RadioService::class.java) intent2.putExtra("action", Actions.KILL.name) val pendingButtonIntent = PendingIntent.getService(c, 2, intent2, PendingIntent.FLAG_UPDATE_CURRENT) - val stopAction = NotificationCompat.Action.Builder(R.drawable.ic_stop,"Stop", pendingButtonIntent).build() + val stopAction = NotificationCompat.Action.Builder(R.drawable.ic_close,"Stop", pendingButtonIntent).build() builder.addAction(stopAction) if (isRinging) { diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/RadioService.kt b/app/src/main/java/fr/forum_thalie/tsumugi/RadioService.kt index 3c4a37e..c98f641 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/RadioService.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/RadioService.kt @@ -72,7 +72,7 @@ class RadioService : MediaBrowserServiceCompat() { } 1 -> { //[REMOVE LOG CALLS]Log.d(tag, radioTag + "Headset is plugged") - headsetPluggedIn = true + headsetPluggedIn = true && PreferenceManager.getDefaultSharedPreferences(context).getBoolean("autoStartOnPlug", false) } else -> { //[REMOVE LOG CALLS]Log.d(tag, radioTag + "I have no idea what the headset state is") diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/ui/nowplaying/NowPlayingViewModel.kt b/app/src/main/java/fr/forum_thalie/tsumugi/ui/nowplaying/NowPlayingViewModel.kt index 627abeb..a6f56f3 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/ui/nowplaying/NowPlayingViewModel.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/ui/nowplaying/NowPlayingViewModel.kt @@ -1,9 +1,11 @@ package fr.forum_thalie.tsumugi.ui.nowplaying import android.widget.SeekBar +import androidx.core.content.edit import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import fr.forum_thalie.tsumugi.playerstore.PlayerStore +import fr.forum_thalie.tsumugi.preferenceStore class NowPlayingViewModel: ViewModel() { @@ -21,6 +23,10 @@ class NowPlayingViewModel: ViewModel() { override fun onProgressChanged(seekBar: SeekBar, progress: Int, fromUser: Boolean) { // updated continuously as the user slides the thumb PlayerStore.instance.volume.value = progress + preferenceStore.edit { + putInt("volume", progress) + commit() + } } override fun onStartTrackingTouch(seekBar: SeekBar) { diff --git a/app/src/main/res/drawable-anydpi/ic_close.xml b/app/src/main/res/drawable-anydpi/ic_close.xml new file mode 100644 index 0000000..443f138 --- /dev/null +++ b/app/src/main/res/drawable-anydpi/ic_close.xml @@ -0,0 +1,11 @@ + + + diff --git a/app/src/main/res/drawable-hdpi/ic_close.png b/app/src/main/res/drawable-hdpi/ic_close.png new file mode 100644 index 0000000000000000000000000000000000000000..c661d153a3e668732f3d973efa221ab40e1aabd3 GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBrg*wIhE&{oJ1v^)fC3N8S2NqT z@{eiX7OZS)b>i+_U!rL};d~C;Z-aA!PA6mqZx;P*tcy2FJJ}MW8UAMCDx-~QEt2ZN zP2Zw?gT!ZUw&$ID#d$$g){^q74@NWRF`iD1Vw-s~gKgGnjU{hV#& zJ+#nSxbC6J_J(DSE|)!)Wg0E5bX)8m=y>~3o(PXV14FBDYmHvO>VH7{7(8A5T-G@y GGywpv*EqWX literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/ic_close.png b/app/src/main/res/drawable-xhdpi/ic_close.png new file mode 100644 index 0000000000000000000000000000000000000000..91f6c7a8b0bb701ab40aaf9f070dda9e14473862 GIT binary patch literal 235 zcmVxoOZg(T zNmb1dUB33-#Uw<(I@_sKLR{pJ%E9OsSIrO>J*O==U0!qHW%3#V%jLg_xRHM&&t_P>TYOtFFxi z_010)%w(o4O^{A+jbsrzQEj~PZ>8}fhi$w-U0_fr=wy*JcVpQ>p6XKt8B>ane%d&v zWr@o1r99K6Jk2fRoG$tHg)6^wJQv`}UsU4Z^?vvHkZ?~{%llU54_z;MdQ7U>_G`iA z6B9XX=FXXTaQRf@MU5|?e#uFZw6v9q^7A`=Y}(Yziw-`0x+n8W&zxCpXHTx2km7%C z{-m5!nF^V;mij6;Ck88?oF~Kbv1_Bp=b6vlC$43i9Xi>%@?4XJ!Q&I970!1uA|@O; zx^U8iJEzyHbbg#(M2JA(%poT4@i3QOk#$5=fyMTwclqmPxFcW2omvh L^>bP0l+XkK*Ykp( literal 0 HcmV?d00001 diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 0a381f0..865b547 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -54,5 +54,6 @@ Choisir la fréquence de mise à jour quand la radio est stoppée Actualisation… Raffraîchir les données + \"Play\" au branchement de la prise casque diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6408717..92e4587 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -74,5 +74,6 @@ Set update period when stopped Refreshing data… Refresh data + Auto play when plugging headphones diff --git a/app/src/main/res/xml/customize_preferences.xml b/app/src/main/res/xml/customize_preferences.xml index 6331d4a..1da9a2e 100644 --- a/app/src/main/res/xml/customize_preferences.xml +++ b/app/src/main/res/xml/customize_preferences.xml @@ -1,7 +1,7 @@ - + + Date: Thu, 27 Feb 2020 23:20:16 +0100 Subject: [PATCH 3/6] Parameters set their name in the Action Bar --- .../fr/forum_thalie/tsumugi/preferences/AlarmFragment.kt | 8 ++++++++ .../tsumugi/preferences/CustomizeFragment.kt | 7 +++++++ .../tsumugi/preferences/MainPreferenceFragment.kt | 5 +++++ .../fr/forum_thalie/tsumugi/preferences/SleepFragment.kt | 7 +++++++ app/src/main/res/values-fr/strings.xml | 9 +++++---- app/src/main/res/values/strings.xml | 7 ++++--- app/src/main/res/xml/preferences.xml | 2 +- 7 files changed, 37 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/AlarmFragment.kt b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/AlarmFragment.kt index d876246..4b07606 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/AlarmFragment.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/AlarmFragment.kt @@ -1,8 +1,10 @@ package fr.forum_thalie.tsumugi.preferences import android.app.TimePickerDialog +import android.content.Context import android.os.Bundle import android.util.Log +import androidx.appcompat.app.AppCompatActivity import androidx.core.content.edit import androidx.preference.* import fr.forum_thalie.tsumugi.* @@ -11,6 +13,12 @@ import fr.forum_thalie.tsumugi.alarm.RadioAlarm import java.util.* class AlarmFragment : PreferenceFragmentCompat() { + + override fun onAttach(context: Context) { + (activity as AppCompatActivity).supportActionBar?.title = context.getString(R.string.setupAlarmClock) + super.onAttach(context) + } + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.alarm_preferences, rootKey) diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/CustomizeFragment.kt b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/CustomizeFragment.kt index fe3a2cd..cedcec8 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/CustomizeFragment.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/CustomizeFragment.kt @@ -1,12 +1,19 @@ package fr.forum_thalie.tsumugi.preferences +import android.content.Context import android.os.Bundle import androidx.appcompat.app.AlertDialog +import androidx.appcompat.app.AppCompatActivity import androidx.preference.* import fr.forum_thalie.tsumugi.R import fr.forum_thalie.tsumugi.preferenceStore class CustomizeFragment : PreferenceFragmentCompat() { + override fun onAttach(context: Context) { + (activity as AppCompatActivity).supportActionBar?.title = context.getString(R.string.customizeAppBehavior) + super.onAttach(context) + } + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.customize_preferences, rootKey) diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/MainPreferenceFragment.kt b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/MainPreferenceFragment.kt index 61d30fd..4eb797f 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/MainPreferenceFragment.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/MainPreferenceFragment.kt @@ -5,9 +5,14 @@ import android.net.Uri import android.os.Bundle import fr.forum_thalie.tsumugi.R import android.annotation.SuppressLint +import androidx.appcompat.app.AppCompatActivity import androidx.preference.* class MainPreferenceFragment : PreferenceFragmentCompat() { + override fun onResume() { + super.onResume() + (activity as AppCompatActivity).supportActionBar?.title = context?.getString(R.string.settings) + } @SuppressLint("ApplySharedPref") override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/SleepFragment.kt b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/SleepFragment.kt index 4c62ae3..9041a23 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/preferences/SleepFragment.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/preferences/SleepFragment.kt @@ -1,13 +1,20 @@ package fr.forum_thalie.tsumugi.preferences +import android.content.Context import android.os.Bundle import androidx.preference.* import fr.forum_thalie.tsumugi.R import android.text.InputType +import androidx.appcompat.app.AppCompatActivity import fr.forum_thalie.tsumugi.alarm.RadioSleeper class SleepFragment : PreferenceFragmentCompat() { + override fun onAttach(context: Context) { + (activity as AppCompatActivity).supportActionBar?.title = context.getString(R.string.setSleepTimer) + super.onAttach(context) + } + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.sleep_preference, rootKey) diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 865b547..c2e04af 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -37,16 +37,16 @@ Derniers titres Planning Programme régulier - Activer l\'alarme + Activer le réveil Choisir l\'heure Choisir les jours Choisir le délai de répétition d\'alarme (minutes) Volume au démarrage Utiliser une disposition horizontale adaptée Rendre les barres d\information persistantes - Configurer l\'alarme - Configurer la minuterie avant extinction - Paramètres de l\'application + Réveil + Minuterie avant extinction + Comportement de l\'application Reporter un bug Minuterie avant fermeture de l\'application Choisir une durée (en minutes) @@ -55,5 +55,6 @@ Actualisation… Raffraîchir les données \"Play\" au branchement de la prise casque + Paramètres diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 92e4587..3847fed 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -64,9 +64,9 @@ Volume at startup Use horizontal split layout Make Snackbars persistent - Set up alarm clock - Set sleep timer - Customize app behavior + Alarm + Sleep timer + Customize app behavior Submit a bug (opens GitHub in a web browser) Sleep - close app after some time Set duration (minutes) @@ -75,5 +75,6 @@ Refreshing data… Refresh data Auto play when plugging headphones + Settings diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 4b1e943..8edd336 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -20,7 +20,7 @@ From 3de813b5248af48591768a6bba8571ae5e27b83d Mon Sep 17 00:00:00 2001 From: yattoz <12408848+yattoz@users.noreply.github.com> Date: Thu, 27 Feb 2020 23:23:49 +0100 Subject: [PATCH 4/6] version bump --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 19669a3..56abd3b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,8 +29,8 @@ android { applicationId "fr.forum_thalie.tsumugi" minSdkVersion 16 targetSdkVersion 29 - versionCode 113 - versionName "1.1.3" + versionCode 114 + versionName "1.1.4" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true } From c8abee4e97c0fbcd6bf9a34210434894bb49e6c5 Mon Sep 17 00:00:00 2001 From: yattoz <12408848+yattoz@users.noreply.github.com> Date: Thu, 2 Apr 2020 15:44:01 +0200 Subject: [PATCH 5/6] fixed DST for Paris --- app/src/main/assets/planning_example.json | 2 +- .../fr/forum_thalie/tsumugi/playerstore/PlayerStore.kt | 3 ++- .../forum_thalie/tsumugi/ui/programme/ProgrammeAdapter.kt | 8 ++++---- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/src/main/assets/planning_example.json b/app/src/main/assets/planning_example.json index 94c582a..1ef0236 100644 --- a/app/src/main/assets/planning_example.json +++ b/app/src/main/assets/planning_example.json @@ -62,5 +62,5 @@ } ], "regular_programme" : "Programmation habituelle", - "timezone": "GMT+1" + "timezone": "Europe/Paris" } \ No newline at end of file diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/playerstore/PlayerStore.kt b/app/src/main/java/fr/forum_thalie/tsumugi/playerstore/PlayerStore.kt index e37fde9..7e2e03a 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/playerstore/PlayerStore.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/playerstore/PlayerStore.kt @@ -12,6 +12,7 @@ import org.json.JSONObject import java.net.URL import java.text.ParseException import java.text.SimpleDateFormat +import java.time.format.TextStyle import java.util.* import kotlin.collections.ArrayList @@ -61,7 +62,7 @@ class PlayerStore { { val dateFormat = SimpleDateFormat("yyyy-MM-dd hh:mm:ss z", Locale.getDefault()) try { - val t: Date? = dateFormat.parse("$s ${Planning.instance.timeZone.id}") + val t: Date? = dateFormat.parse("$s ${Planning.instance.timeZone.getDisplayName(Planning.instance.timeZone.useDaylightTime(), TimeZone.SHORT)}") //[REMOVE LOG CALLS]Log.d(tag, "date: $s -> $t") return t!!.time } catch (e: ParseException) { diff --git a/app/src/main/java/fr/forum_thalie/tsumugi/ui/programme/ProgrammeAdapter.kt b/app/src/main/java/fr/forum_thalie/tsumugi/ui/programme/ProgrammeAdapter.kt index 6742d87..2869b81 100644 --- a/app/src/main/java/fr/forum_thalie/tsumugi/ui/programme/ProgrammeAdapter.kt +++ b/app/src/main/java/fr/forum_thalie/tsumugi/ui/programme/ProgrammeAdapter.kt @@ -1,18 +1,18 @@ package fr.forum_thalie.tsumugi.ui.programme import android.annotation.SuppressLint -import android.util.TypedValue import android.view.LayoutInflater import android.view.ViewGroup import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout -import androidx.core.widget.TextViewCompat import androidx.recyclerview.widget.RecyclerView -import fr.forum_thalie.tsumugi.* +import fr.forum_thalie.tsumugi.R +import fr.forum_thalie.tsumugi.colorAccent +import fr.forum_thalie.tsumugi.colorWhited import fr.forum_thalie.tsumugi.planning.Planning import fr.forum_thalie.tsumugi.planning.Programme +import fr.forum_thalie.tsumugi.weekdaysSundayFirst import java.util.* -import kotlin.collections.ArrayList class ProgrammeAdapter(private val dataSet: ArrayList, private val day: String /*, From b77d9017a6d4f9b97794e2f478288ef207736d9e Mon Sep 17 00:00:00 2001 From: yattoz <12408848+yattoz@users.noreply.github.com> Date: Sun, 12 Apr 2020 19:49:18 +0200 Subject: [PATCH 6/6] bump up version code --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 56abd3b..0274953 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,8 +29,8 @@ android { applicationId "fr.forum_thalie.tsumugi" minSdkVersion 16 targetSdkVersion 29 - versionCode 114 - versionName "1.1.4" + versionCode 115 + versionName "1.1.5" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true }