private MPTweak GetInternalTweak() { var mpTweak = MPTweakStore.SharedInstance().TweakWithName(Name); if (mpTweak == null) { throw new InvalidOperationException($"Tweak '{Name}' is not registered. Use MixpanelTweaks.Register() before using tweaks."); } return(mpTweak); }
public static void Register(Type appTweaks) { var tweakStore = MPTweakStore.SharedInstance(); var fields = appTweaks.GetFields(); foreach (var field in fields) { var tweak = (Tweak)field.GetValue(null); LoadOrCreateMixpanelTweak(tweakStore, tweak); } }
private static MPTweak LoadOrCreateMixpanelTweak(MPTweakStore store, Tweak tweak) { var mpTweak = store.TweakWithName(tweak.Name); if (mpTweak != null) { return(mpTweak); } mpTweak = CreateMixpanelTweak(tweak); store.AddTweak(mpTweak); return(mpTweak); }