Skip to content

Drop timestamp checks in Remote Config #5507

Open
@Skoti

Description

@Skoti

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:

strongSelf->_settings.lastApplyTimeInterval = [[NSDate date] timeIntervalSince1970];

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:
if (strongSelf->_settings.lastETagUpdateTime == 0 ||
strongSelf->_settings.lastETagUpdateTime <= strongSelf->_settings.lastApplyTimeInterval) {
FIRLogWarning(kFIRLoggerRemoteConfig, @"I-RCN000069",
@"Most recently fetched config is already activated.");

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?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions