From 0c00b1970d558e4278b11e2489c74dfe4446297d Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Thu, 26 Jan 2023 18:16:24 +0100 Subject: [PATCH 1/6] increase SdkVersion to 33 Please be aware, that "Google Play requires that apps target API level 31 or higher." --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index e963385e9..9f6c6fc13 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -2,12 +2,12 @@ apply plugin: 'com.android.application' apply plugin: 'org.greenrobot.greendao' android { - compileSdkVersion 30 + compileSdkVersion 33 defaultConfig { applicationId "fr.gaulupeau.apps.InThePoche" minSdkVersion 21 - targetSdkVersion 30 + targetSdkVersion 33 versionCode 229 versionName "2.4.3" From be0df31728023a8914dfc7505db89a7e753ec912 Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Thu, 26 Jan 2023 18:08:55 +0100 Subject: [PATCH 2/6] upgrade to gradle 7.4.0 The upgrade wizard reported the following: Sync succeeded The upgraded project successfully synced with the IDE. You should test that the upgraded project builds and passes its tests successfully before making further changes. The upgrade consisted of the following steps: Upgrade AGP dependency from 7.1.3 to 7.4.0 Upgrade Gradle version to 7.5 Migrate packagingOptions DSL properties to sub-blocks Migrate DSL properties from lintOptions to lint Move package from Android manifest to build files superseeds #1239 --- app/build.gradle | 14 ++++++++------ app/src/main/AndroidManifest.xml | 3 +-- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 9f6c6fc13..96ab78d86 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -17,15 +17,13 @@ android { } } } - - lintOptions { - lintConfig file("lint.xml") - } - packagingOptions { - exclude("META-INF/*.kotlin_module") + resources { + excludes += ['META-INF/*.kotlin_module'] + } } + buildTypes { release { minifyEnabled false @@ -45,6 +43,10 @@ android { } } } + lint { + lintConfig file('lint.xml') + } + namespace 'fr.gaulupeau.apps.InThePoche' } greendao { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 93b41b454..44027f8c9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,8 +1,7 @@ + android:installLocation="auto"> diff --git a/build.gradle b/build.gradle index 162564122..427be0d28 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.0.4' + classpath 'com.android.tools.build:gradle:7.4.0' classpath 'org.greenrobot:greendao-gradle-plugin:3.3.1' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 29e413457..2ec77e51a 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists From 556af3017e6ed55ccdc0e2988eaf3e5db3366ca1 Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Thu, 26 Jan 2023 18:40:38 +0100 Subject: [PATCH 3/6] add permission in order to post notifications --- app/src/main/AndroidManifest.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 44027f8c9..97bf5279e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -5,6 +5,7 @@ + From 71136d4e66e97dffe6357e7d87f2bb007f77c95b Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Wed, 12 Jul 2023 00:20:35 +0200 Subject: [PATCH 4/6] update dependencies --- app/build.gradle | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 96ab78d86..a8a1a002e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -55,11 +55,11 @@ greendao { } dependencies { - implementation 'androidx.appcompat:appcompat:1.3.1' - implementation 'androidx.media:media:1.4.3' + implementation 'androidx.appcompat:appcompat:1.6.1' + implementation 'androidx.media:media:1.6.0' implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' - implementation 'androidx.recyclerview:recyclerview:1.2.1' - implementation 'com.google.android.material:material:1.4.0' + implementation 'androidx.recyclerview:recyclerview:1.3.0' + implementation 'com.google.android.material:material:1.9.0' implementation 'org.greenrobot:eventbus:3.3.1' implementation 'org.greenrobot:greendao:3.3.0' annotationProcessor 'org.greenrobot:eventbus-annotation-processor:3.3.1' From f0907a6a3cc04b8ab281e45abf65a1338ed2e614 Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Wed, 12 Jul 2023 00:22:48 +0200 Subject: [PATCH 5/6] update gradle to 7.4.2 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 427be0d28..2ef54ea23 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.4.0' + classpath 'com.android.tools.build:gradle:7.4.2' classpath 'org.greenrobot:greendao-gradle-plugin:3.3.1' } } From 8f0826df6471ee282e938fb073cfcc81e1c4c37d Mon Sep 17 00:00:00 2001 From: Sven Fischer Date: Wed, 12 Jul 2023 00:34:22 +0200 Subject: [PATCH 6/6] add permission check for notification --- .../fr/gaulupeau/apps/Poche/tts/TtsService.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/src/main/java/fr/gaulupeau/apps/Poche/tts/TtsService.java b/app/src/main/java/fr/gaulupeau/apps/Poche/tts/TtsService.java index 0e02ac3b8..e7a7f2d78 100644 --- a/app/src/main/java/fr/gaulupeau/apps/Poche/tts/TtsService.java +++ b/app/src/main/java/fr/gaulupeau/apps/Poche/tts/TtsService.java @@ -1,5 +1,6 @@ package fr.gaulupeau.apps.Poche.tts; +import android.Manifest; import android.app.Notification; import android.app.PendingIntent; import android.app.Service; @@ -8,6 +9,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; +import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.media.AudioManager; import android.media.MediaPlayer; @@ -26,6 +28,7 @@ import android.util.Log; import androidx.annotation.NonNull; +import androidx.core.app.ActivityCompat; import androidx.core.app.NotificationCompat; import androidx.core.app.NotificationManagerCompat; import androidx.core.util.Pair; @@ -1152,6 +1155,16 @@ private void setForegroundAndNotification(boolean forceForeground) { .from(getApplicationContext()); if (showNotification) { + if (ActivityCompat.checkSelfPermission(this, Manifest.permission.POST_NOTIFICATIONS) != PackageManager.PERMISSION_GRANTED) { + // TODO: Consider calling + // ActivityCompat#requestPermissions + // here to request the missing permissions, and then overriding + // public void onRequestPermissionsResult(int requestCode, String[] permissions, + // int[] grantResults) + // to handle the case where the user grants the permission. See the documentation + // for ActivityCompat#requestPermissions for more details. + return; + } notificationManager.notify(NOTIFICATION_ID, generateNotification()); } else { notificationManager.cancel(NOTIFICATION_ID);