public string EnsureUrlsAreFullyTrackedByRemovingLocaleAndAddingTrackingCode(string url)
        {
            // arrange

            // act
            var trackedUrl = Tracking.AppendTrackingInfo(url, "event", "channel", "alias");

            // assert
            return(trackedUrl);
        }
Exemplo n.º 2
0
        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();
        }