Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions Source/CSharpAnalytics/AutoMeasurement/BaseAutoMeasurement.cs
Original file line number Diff line number Diff line change
Expand Up @@ -69,12 +69,16 @@ public async void Start(MeasurementConfiguration configuration, string launchKin
sessionManager = new SessionManager(sessionState, configuration.SampleRate);
await StartRequesterAsync();

if (delayedOptOut != null) SetOptOut(delayedOptOut.Value);
// Preserve 'delayedOptOut' value to use in condition checking
var hasDelayedOptOut = delayedOptOut;
if (hasDelayedOptOut.HasValue) SetOptOut(delayedOptOut.GetValueOrDefault());

Client.Configure(configuration, sessionManager, GetEnvironment(), Add);

// Sometimes apps crash so preserve at least session number and visitor id on launch
await Save(sessionManager.GetState(), SessionStorageName);
// Avoid re-saving if a delayed optout was set (save already occurred in 'SetOptOut')
if (!hasDelayedOptOut.HasValue)
await Save(sessionManager.GetState(), SessionStorageName);

HookEvents();
}
Expand Down