diff --git a/CHANGELOG.md b/CHANGELOG.md
index d1a0382..d3143a6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,15 @@
+## [1.5.2] - 15th Mart 2024
+
+* Removed unnecessary requestAuthorizationWithOptions for iOS, this plugin doesn't need it to show badges. This should be used only for remote push notification.
+
+## [1.5.1] - 2nd January 2024
+
+* Fixed an issue with missing Gradle namespace and other related issues.
+* Resolved an issue with the Java target SDK.
+* Adjusted Dart SDK constraint to exclusively support Dart null-safety and Flutter null-safety versions.
+* Corrected the usage of old Flutter embedding in the example app.
+* Updated the wrapper to support the new Gradle version.
+
## [1.5.0] - 16th September 2022
* PR #52 (Don't overwrite categories on iOS)
diff --git a/android/build.gradle b/android/build.gradle
index 150f685..af57bc0 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -8,7 +8,7 @@ buildscript {
}
dependencies {
- classpath 'com.android.tools.build:gradle:4.1.0'
+ classpath 'com.android.tools.build:gradle:7.3.1'
}
}
@@ -22,18 +22,24 @@ rootProject.allprojects {
apply plugin: 'com.android.library'
android {
- compileSdkVersion 29
+ compileSdkVersion 33
defaultConfig {
- minSdkVersion 16
+ minSdkVersion 19
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
lintOptions {
disable 'InvalidPackage'
}
+
if (project.android.hasProperty('namespace')) {
namespace 'fr.g123k.flutterappbadge.flutterappbadger'
}
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
}
dependencies {
diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml
index 6a3dcb8..94cbbcf 100644
--- a/android/src/main/AndroidManifest.xml
+++ b/android/src/main/AndroidManifest.xml
@@ -1,3 +1 @@
-
-
+
diff --git a/android/src/main/java/fr/g123k/flutterappbadger/FlutterAppBadgerPlugin.java b/android/src/main/java/fr/g123k/flutterappbadger/FlutterAppBadgerPlugin.java
index 18d1e47..659a169 100644
--- a/android/src/main/java/fr/g123k/flutterappbadger/FlutterAppBadgerPlugin.java
+++ b/android/src/main/java/fr/g123k/flutterappbadger/FlutterAppBadgerPlugin.java
@@ -2,6 +2,8 @@
import android.content.Context;
+import androidx.annotation.NonNull;
+
import io.flutter.embedding.engine.plugins.FlutterPlugin;
import io.flutter.plugin.common.MethodChannel;
import io.flutter.plugin.common.MethodChannel.MethodCallHandler;
@@ -30,23 +32,28 @@ public void onAttachedToEngine(FlutterPluginBinding flutterPluginBinding) {
}
@Override
- public void onDetachedFromEngine(FlutterPluginBinding flutterPluginBinding) {
+ public void onDetachedFromEngine(@NonNull FlutterPluginBinding flutterPluginBinding) {
channel.setMethodCallHandler(null);
applicationContext = null;
}
@Override
- public void onMethodCall(MethodCall call, Result result) {
- if (call.method.equals("updateBadgeCount")) {
- ShortcutBadger.applyCount(applicationContext, Integer.valueOf(call.argument("count").toString()));
- result.success(null);
- } else if (call.method.equals("removeBadge")) {
- ShortcutBadger.removeCount(applicationContext);
- result.success(null);
- } else if (call.method.equals("isAppBadgeSupported")) {
- result.success(ShortcutBadger.isBadgeCounterSupported(applicationContext));
- } else {
- result.notImplemented();
+ public void onMethodCall(MethodCall call, @NonNull Result result) {
+ switch (call.method) {
+ case "updateBadgeCount":
+ ShortcutBadger.applyCount(applicationContext, Integer.valueOf(call.argument("count").toString()));
+ result.success(null);
+ break;
+ case "removeBadge":
+ ShortcutBadger.removeCount(applicationContext);
+ result.success(null);
+ break;
+ case "isAppBadgeSupported":
+ result.success(ShortcutBadger.isBadgeCounterSupported(applicationContext));
+ break;
+ default:
+ result.notImplemented();
+ break;
}
}
}
diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle
index 1f18553..3c5c4e0 100644
--- a/example/android/app/build.gradle
+++ b/example/android/app/build.gradle
@@ -15,7 +15,7 @@ apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
- compileSdkVersion 29
+ compileSdk = 33
lintOptions {
disable 'InvalidPackage'
@@ -24,8 +24,8 @@ android {
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "fr.g123k.flutterappbadger.flutterappbadgerexample"
- minSdkVersion 16
- targetSdkVersion 29
+ minSdkVersion flutter.minSdkVersion
+ targetSdkVersion 33
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -38,6 +38,11 @@ android {
signingConfig signingConfigs.debug
}
}
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
}
flutter {
diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml
index 4ed4f4d..7a5ab2c 100644
--- a/example/android/app/src/main/AndroidManifest.xml
+++ b/example/android/app/src/main/AndroidManifest.xml
@@ -22,7 +22,8 @@
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density"
android:hardwareAccelerated="true"
- android:windowSoftInputMode="adjustResize">
+ android:windowSoftInputMode="adjustResize"
+ android:exported="true">