@@ -62,7 +62,6 @@ final class BackgroundTaskRefreshDispatcher {
6262 let refreshTasks = Task {
6363 do {
6464 let systemInfo = await BackgroundTaskSystemInfo ( )
65- let lastRunTime = UserDefaults . standard [ . lastBackgroundRefreshTime] as? Date
6665
6766 let startTime = Date . now
6867
@@ -81,9 +80,13 @@ final class BackgroundTaskRefreshDispatcher {
8180 }
8281
8382 let timeTaken = round ( Date . now. timeIntervalSince ( startTime) )
84- let timeSinceLastRun = lastRunTime? . timeIntervalSinceNow. magnitude
8583
86- ServiceLocator . analytics. track ( event: . BackgroundUpdates. dataSyncedDetailed (
84+ var timeSinceLastRun : TimeInterval ? = nil
85+ if let lastRunTime = UserDefaults . standard [ . lastBackgroundRefreshCompletionTime] as? Date {
86+ timeSinceLastRun = round ( lastRunTime. timeIntervalSinceNow. magnitude)
87+ }
88+
89+ ServiceLocator . analytics. track ( event: . BackgroundUpdates. dataSynced (
8790 timeTaken: timeTaken,
8891 backgroundTimeGranted: systemInfo. backgroundTimeGranted,
8992 networkType: systemInfo. networkType,
@@ -96,7 +99,7 @@ final class BackgroundTaskRefreshDispatcher {
9699 ) )
97100
98101 // Save date, for use in analytics next time we refresh
99- UserDefaults . standard [ . lastBackgroundRefreshTime ] = Date . now
102+ UserDefaults . standard [ . lastBackgroundRefreshCompletionTime ] = Date . now
100103
101104 backgroundTask. setTaskCompleted ( success: true )
102105
@@ -139,7 +142,7 @@ private struct NetworkInfo {
139142
140143private struct BackgroundTaskSystemInfo {
141144 let backgroundTimeGranted : TimeInterval ?
142- let networkInfo : NetworkInfo
145+ private let networkInfo : NetworkInfo
143146 let isPowered : Bool
144147 let batteryLevel : Float
145148 let isLowPowerMode : Bool
0 commit comments