firebase / firebase/firebase-ios-sdk
Drop timestamp checks in Remote Config
- Dominant language
- C++
- Stars
- 6.7k
- Forks
- 1.8k
- Avg merge
- 2d 14h
- Merged PRs (30d)
- 72
Description
### Feature proposal
* Firebase Component: Remote Config
I've noticed that remote config updates rely on the `lastApplyTimeInterval` and `lastETagUpdateTime`.
This means that if a user changes a date in their phone to a future date (for whatever reason), run an app and got a remote config update, it will set `lastApplyTimeInterval` to future timestamp:
https://github.com/firebase/firebase-ios-sdk/blob/a2fbd12168415cca2404835729953c4432263847/FirebaseRemoteConfig/Sources/FIRRemoteConfig.m#L317
Then if they change a date to the real one (which in that case is an earlier one) then any new remote config updates will be ignored due to this check:
https://github.com/firebase/firebase-ios-sdk/blob/a2fbd12168415cca2404835729953c4432263847/FirebaseRemoteConfig/Sources/FIRRemoteConfig.m#L296-L299
This means users will be unable to activate any future remote config updates up to that future date they had set unless they reinstall the app.
Wouldn't it be better if the remote config updates relied only on some config version check which I guess could be the etag itself?
Contributor guide
Assessment
This issue has not been assessed yet.