public string EnsureUrlsAreFullyTrackedByRemovingLocaleAndAddingTrackingCode(string url) { // arrange // act var trackedUrl = Tracking.AppendTrackingInfo(url, "event", "channel", "alias"); // assert return(trackedUrl); }
static void ProcessReadMe() { var readme = File.ReadAllText("./README.md"); var track_channel = Environment.GetEnvironmentVariable("INPUT_CHANNEL"); var track_alias = Environment.GetEnvironmentVariable("INPUT_ALIAS"); var track_event = Environment.GetEnvironmentVariable("INPUT_EVENT"); var pattern = @"(((http|ftp|https):\/\/)?[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?)"; Regex regex = new Regex(pattern); string result = regex.Replace(readme, m => Tracking.AppendTrackingInfo(m.Groups[0].Value, track_event, track_channel, track_alias)); File.WriteAllText("./README.md", result); }
protected override async void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); Xamarin.Essentials.Platform.Init(this, savedInstanceState); if (Intent.Action == Intent.ActionSend) { // This is just an example of the data stored in the extras var uriFromExtras = Intent.GetStringExtra(Intent.ExtraText).Trim(); var alias = await SecureStorage.GetAsync("Alias"); // Check for existing query string and use & instead var uri = Tracking.AppendTrackingInfo(uriFromExtras, "social", "twitter", alias); await Clipboard.SetTextAsync(uri); await Launcher.TryOpenAsync($"twitter://post?text={uri}"); } Finish(); }