@@ -23,6 +23,7 @@ public sealed class SystemInformation
2323 {
2424 private readonly LocalObjectStorageHelper _localObjectStorageHelper = new LocalObjectStorageHelper ( new SystemSerializer ( ) ) ;
2525 private DateTime _sessionStart ;
26+ private PackageVersion _previousVersionInstalled ;
2627
2728 /// <summary>
2829 /// Launches the store app so the user can leave a review.
@@ -126,7 +127,11 @@ public static async Task LaunchStoreForReviewAsync()
126127 /// This will be the current version if a previous version of the app was installed
127128 /// before using <see cref="SystemInformation"/> or if the app is not updated.
128129 /// </summary>
129- public PackageVersion PreviousVersionInstalled { get ; }
130+ public PackageVersion PreviousVersionInstalled
131+ {
132+ get => _previousVersionInstalled ;
133+ private set => _previousVersionInstalled = value ;
134+ }
130135
131136 /// <summary>
132137 /// Gets the DateTime (in UTC) when the app was launched for the first time.
@@ -317,7 +322,6 @@ private SystemInformation()
317322 IsAppUpdated = DetectIfAppUpdated ( ) ;
318323 FirstUseTime = DetectFirstUseTime ( ) ;
319324 FirstVersionInstalled = DetectFirstVersionInstalled ( ) ;
320- PreviousVersionInstalled = DetectPreviousVersionInstalled ( ) ;
321325 InitializeValuesSetWithTrackAppUse ( ) ;
322326 }
323327
@@ -345,9 +349,9 @@ private bool DetectIfAppUpdated()
345349 else
346350 {
347351 var lastVersion = _localObjectStorageHelper . Read < string > ( nameof ( currentVersion ) ) ;
352+ PreviousVersionInstalled = lastVersion . ToPackageVersion ( ) ;
348353 if ( currentVersion != lastVersion )
349354 {
350- _localObjectStorageHelper . Save ( nameof ( PreviousVersionInstalled ) , lastVersion ) ;
351355 _localObjectStorageHelper . Save ( nameof ( currentVersion ) , currentVersion ) ;
352356 return true ;
353357 }
@@ -391,23 +395,6 @@ private PackageVersion DetectFirstVersionInstalled()
391395 return result ;
392396 }
393397
394- private PackageVersion DetectPreviousVersionInstalled ( )
395- {
396- PackageVersion result ;
397-
398- if ( _localObjectStorageHelper . KeyExists ( nameof ( PreviousVersionInstalled ) ) )
399- {
400- result = _localObjectStorageHelper . Read < string > ( nameof ( PreviousVersionInstalled ) ) . ToPackageVersion ( ) ;
401- }
402- else
403- {
404- result = ApplicationVersion ;
405- _localObjectStorageHelper . Save ( nameof ( PreviousVersionInstalled ) , ApplicationVersion . ToFormattedString ( ) ) ;
406- }
407-
408- return result ;
409- }
410-
411398 private void InitializeValuesSetWithTrackAppUse ( )
412399 {
413400 LaunchTime = DateTime . MinValue ;
0 commit comments