in remote_config/testapp/Assets/Firebase/Sample/RemoteConfig/UIHandler.cs [132:165]
void FetchComplete(Task fetchTask) {
if (fetchTask.IsCanceled) {
DebugLog("Fetch canceled.");
} else if (fetchTask.IsFaulted) {
DebugLog("Fetch encountered an error.");
} else if (fetchTask.IsCompleted) {
DebugLog("Fetch completed successfully!");
}
var info = Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.Info;
switch (info.LastFetchStatus) {
case Firebase.RemoteConfig.LastFetchStatus.Success:
Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.ActivateAsync()
.ContinueWithOnMainThread(task => {
DebugLog(String.Format("Remote data loaded and ready (last fetch time {0}).",
info.FetchTime));
});
break;
case Firebase.RemoteConfig.LastFetchStatus.Failure:
switch (info.LastFetchFailureReason) {
case Firebase.RemoteConfig.FetchFailureReason.Error:
DebugLog("Fetch failed for unknown reason");
break;
case Firebase.RemoteConfig.FetchFailureReason.Throttled:
DebugLog("Fetch throttled until " + info.ThrottledEndTime);
break;
}
break;
case Firebase.RemoteConfig.LastFetchStatus.Pending:
DebugLog("Latest Fetch call still pending.");
break;
}
}