From 0ccf1fb3b85a6e21a8b525fd636fc38cfd3a365e Mon Sep 17 00:00:00 2001 From: Alberto Ponces Date: Thu, 1 Sep 2022 13:23:24 +0100 Subject: [PATCH] feat: consider as an update available when an already patched app is updated --- lib/services/manager_api.dart | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/services/manager_api.dart b/lib/services/manager_api.dart index 3b7e0ef2..759a575a 100644 --- a/lib/services/manager_api.dart +++ b/lib/services/manager_api.dart @@ -83,6 +83,20 @@ class ManagerAPI { } else { app.hasUpdates = await hasAppUpdates(app.packageName, app.patchDate); app.changelog = await getAppChangelog(app.packageName, app.patchDate); + if (!app.hasUpdates) { + String? currentInstalledVersion = + (await DeviceApps.getApp(app.packageName))?.versionName; + if (currentInstalledVersion != null) { + String currentSavedVersion = app.version; + int currentInstalledVersionInt = int.parse( + currentInstalledVersion.replaceAll(RegExp('[^0-9]'), '')); + int currentSavedVersionInt = + int.parse(currentSavedVersion.replaceAll(RegExp('[^0-9]'), '')); + if (currentInstalledVersionInt > currentSavedVersionInt) { + app.hasUpdates = true; + } + } + } } } patchedApps.removeWhere((a) => toRemove.contains(a));