Fix session time using milliseconds instead of seconds

This commit is contained in:
ronaldheft
2022-08-23 17:13:43 -04:00
parent 15cdff5aa2
commit 6a885b7241
+7 -5
View File
@@ -49,16 +49,18 @@ class PlayerProgress {
guard let session = PlayerHandler.getPlaybackSession() else { return nil } guard let session = PlayerHandler.getPlaybackSession() else { return nil }
guard !currentTime.isNaN else { return nil } // Prevent bad data on player stop guard !currentTime.isNaN else { return nil } // Prevent bad data on player stop
let now = Date().timeIntervalSince1970 * 1000 let nowInSeconds = Date().timeIntervalSince1970
let lastUpdate = session.updatedAt ?? now let nowInMilliseconds = nowInSeconds * 1000
let timeSinceLastUpdate = now - lastUpdate let lastUpdateInMilliseconds = session.updatedAt ?? nowInMilliseconds
let lastUpdateInSeconds = lastUpdateInMilliseconds / 1000
let secondsSinceLastUpdate = nowInSeconds - lastUpdateInSeconds
session.update { session.update {
session.currentTime = currentTime session.currentTime = currentTime
session.updatedAt = now session.updatedAt = nowInMilliseconds
if includesPlayProgress { if includesPlayProgress {
session.timeListening += timeSinceLastUpdate session.timeListening += secondsSinceLastUpdate
} }
} }