From 3c6304660ab3e911bec6aa76ebdc7884f7747623 Mon Sep 17 00:00:00 2001 From: Twelve Date: Thu, 15 Oct 2026 14:40:41 +0200 Subject: [PATCH 1/2] Fix assignment of AppUpdateSuccessListener and ResumeSuccessListener --- .../Platforms/Android/Handler.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/libs/Maui.Android.InAppUpdates/Platforms/Android/Handler.cs b/src/libs/Maui.Android.InAppUpdates/Platforms/Android/Handler.cs index c645c4a..60f2eba 100644 --- a/src/libs/Maui.Android.InAppUpdates/Platforms/Android/Handler.cs +++ b/src/libs/Maui.Android.InAppUpdates/Platforms/Android/Handler.cs @@ -40,10 +40,11 @@ public static void HandleCreate(Activity activity, Bundle? savedInstanceState) AppUpdateManager = Options.UseFakeAppUpdateManager ? new FakeAppUpdateManager(activity) : AppUpdateManagerFactory.Create(activity); - AppUpdateSuccessListener ??= new AppUpdateSuccessListener( + AppUpdateSuccessListener = new AppUpdateSuccessListener( appUpdateManager: AppUpdateManager, activity: activity, updateRequest: Options.RequestCode); + AppUpdateManager.GetAppUpdateInfo().AddOnSuccessListener(AppUpdateSuccessListener); } @@ -58,10 +59,11 @@ public static void HandleResume(Activity activity) return; } - ResumeSuccessListener ??= new ResumeSuccessListener( + ResumeSuccessListener = new ResumeSuccessListener( appUpdateManager: AppUpdateManager, activity: activity, updateRequest: Options.RequestCode); + AppUpdateManager.GetAppUpdateInfo().AddOnSuccessListener(ResumeSuccessListener); } @@ -99,4 +101,4 @@ public static void HandleActivityResult( break; } } -} \ No newline at end of file +} From ae3c4a61c3b0855a8f144118aac025cc3f6b812f Mon Sep 17 00:00:00 2001 From: Twelve Date: Thu, 15 Oct 2026 14:44:23 +0200 Subject: [PATCH 2/2] Check activity state in OnSuccess method Add checks for activity state before processing update success. --- .../Platforms/Android/AppUpdateSuccessListener.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libs/Maui.Android.InAppUpdates/Platforms/Android/AppUpdateSuccessListener.cs b/src/libs/Maui.Android.InAppUpdates/Platforms/Android/AppUpdateSuccessListener.cs index 09116ef..1cda59f 100644 --- a/src/libs/Maui.Android.InAppUpdates/Platforms/Android/AppUpdateSuccessListener.cs +++ b/src/libs/Maui.Android.InAppUpdates/Platforms/Android/AppUpdateSuccessListener.cs @@ -16,6 +16,11 @@ public class AppUpdateSuccessListener( public void OnSuccess(Java.Lang.Object? result) { + if (activity.IsFinishing || activity.IsDestroyed) + { + return; + } + if (result is not AppUpdateInfo info) { return; @@ -69,4 +74,4 @@ public void OnSuccess(Java.Lang.Object? result) break; } } -} \ No newline at end of file +}