You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
///Save to cache
do {
let fullKey = "\(root)_\(key)"
let cache = try Cache<NSData>(name: UserTrackingCache.cacheName)
let cachedData = NSKeyedArchiver.archivedDataWithRootObject("Y")
cache.setObject(cachedData, forKey: fullKey, expires: CacheExpiry.Seconds(UserTrackingCache.locationCacheTime))
} catch _ {
Log.error("Something went wrong with the cache = \(UserTrackingCache.cacheName)")
}
I remove the expired cache when App starts in AppDelegate
do {
let cache = try Cache<NSData>(name: UserTrackingService.UserTrackingCache.cacheName)
cache.removeExpiredObjects()
} catch _ {
Log.debug("Something went wrong with the cache")
}
But I found the cache timeout sooner than I expected. Almost after a few hours, it expires
Does anyone encounter the same issue? or did I do something wrong ?
Activity
pai911 commentedon Apr 16, 2018
Does AwesomeCache guarantee the cached items not purged before the expiry time
I am thinking that the cache data might be purged by iOS...
pai911 commentedon Apr 18, 2018
Answer my own question.
It turns out the default .CachesDirectory can be purged by the OS sometimes.
So I changed the cache dir to .DocumentDirectory, and then everything works fine.
I really think this should be written in the document.