Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions ownCloudAppShared/Tools/AppStatistics.swift
Original file line number Diff line number Diff line change
Expand Up @@ -80,16 +80,16 @@ public class AppStatistics {
}

// Reset update launch date if current version is different compared to stored ones
if let lastVersion = userDefaults.object(forKey: UserDefaultsKeys.lastInstalledVersion.rawValue) as? String {
if lastVersion != appVersion {
if let lastInstalledVersion = userDefaults.object(forKey: UserDefaultsKeys.lastInstalledVersion.rawValue) as? String {
if lastInstalledVersion != appVersion {
self.updateDate = Date()
}
}

// Update user defaults except for review prompt time stamp updated separately
userDefaults.set(self.launchDate, forKey: UserDefaultsKeys.firstLaunchDate.rawValue)
userDefaults.set(self.launchDate, forKey: UserDefaultsKeys.firstLaunchDate.rawValue)
userDefaults.set(self.updateDate, forKey: UserDefaultsKeys.updateDate.rawValue)
userDefaults.set(self.appVersion, forKey: UserDefaultsKeys.lastInstalledVersion.rawValue)
userDefaults.set(self.updateDate, forKey: UserDefaultsKeys.firstLaunchDate.rawValue)

// Persist user defaults
userDefaults.synchronize()
Expand Down
8 changes: 4 additions & 4 deletions ownCloudAppShared/Tools/VendorServices.swift
Original file line number Diff line number Diff line change
Expand Up @@ -260,14 +260,14 @@ public class VendorServices : NSObject {
// Make sure there is at least one bookmark configured, to not bother users who have never configured any accounts
guard OCBookmarkManager.shared.bookmarks.count > 0 else { return }

// Make sure at least 14 days have elapsed since the first launch of the app
guard AppStatistics.shared.timeIntervalSinceFirstLaunch.days >= 14 else { return }
// Make sure at least 7 days have elapsed since the first launch of the app
guard AppStatistics.shared.timeIntervalSinceFirstLaunch.days >= 7 else { return }

// Make sure at least 7 days have elapsed since first launch of current version
guard AppStatistics.shared.timeIntervalSinceUpdate.days >= 7 else { return }

// Make sure at least 230 have elapsed since last prompting
AppStatistics.shared.requestAppStoreReview(onceInDays: 230)
// Make sure at least 122 have elapsed since last prompting (Apple allows to show the dialog 3 times per 365 days)
AppStatistics.shared.requestAppStoreReview(onceInDays: 122)
}
}

Expand Down