private void OnWindowVisibilityChanged(object sender, VisibilityChangedEventArgs e)
        {
            if (!AppCallbacks.Instance.IsInitialized())
            {
                return;
            }

            if (e.Visible)
            {
                AppCallbacks.Instance.InvokeOnAppThread(() =>
                {
                    GameManager.Instance.InitialiseSound();
                }, false);
                AppCallbacks.Instance.UnityPause(0);
                return;
            }
            else
            {
                AppCallbacks.Instance.UnityPause(1);

                var smallContent = TileContentFactory.CreateTileSquare150x150PeekImageAndText01();
                var wideContent  = TileContentFactory.CreateTileWide310x150ImageAndText02();
                var largeContent = TileContentFactory.CreateTileSquare310x310ImageAndText01();

                AppCallbacks.Instance.InvokeOnAppThread(() =>
                {
                    var score = GameManager.Instance.GetScore();

                    AppCallbacks.Instance.InvokeOnUIThread(() =>
                    {
                        smallContent.Branding         = TileBranding.None;
                        smallContent.TextHeading.Text = "Score : " + score.ToString();
                        smallContent.Image.Src        = "ms-appx:///Assets/SquareTile.png";

                        wideContent.Branding                    = TileBranding.None; // Set this to TileBranding.Name if you wish to display your game name on the tile.
                        wideContent.TextCaption1.Text           = "Score : " + score.ToString();
                        wideContent.Image.Src                   = "ms-appx:///Assets/WideLogo.png";
                        wideContent.RequireSquare150x150Content = false;

                        largeContent.Branding                  = TileBranding.None;
                        largeContent.Image.Src                 = "ms-appx:///Assets/SquareTile.png";
                        largeContent.TextCaptionWrap.Text      = "Score : " + score.ToString();
                        largeContent.RequireWide310x150Content = false;

                        var updaterWide = TileUpdateManager.CreateTileUpdaterForApplication();
                        updaterWide.Update(wideContent.CreateNotification());

                        var updaterLarge = TileUpdateManager.CreateTileUpdaterForApplication();
                        updaterLarge.Update(largeContent.CreateNotification());
                        //updater.Update(smallContent.CreateNotification());
                    }, false);
                }, false);
            }
        }
Exemple #2
0
        private static TileNotification CreateNotifiction(string largeImageName, string wideImageName, string mediumImageName, string smallImageName, string notificationTag, string captionText)
        {
            return(GetTileNotification
                   (
                       GetLargeTile
                       (
                           TileContentFactory.CreateTileSquare310x310ImageAndText01()
                       ).CreateNotification()
                   ));

            TileNotification GetTileNotification(TileNotification tileNotification)
            {
                tileNotification.Tag = notificationTag;
                return(tileNotification);
            }

            ITileSquare310x310ImageAndText01 GetLargeTile(ITileSquare310x310ImageAndText01 largeTile)
            {
                largeTile.TextCaptionWrap.Text = ResourceStringNames.notificationText01.GetResourceString();
                largeTile.Image.Src            = $"ms-appx:///Tiles/{largeImageName}.png";
                largeTile.Wide310x150Content   = GetWideTile(TileContentFactory.CreateTileWide310x150ImageAndText01());

                return(largeTile);
            }

            ITileWide310x150ImageAndText01 GetWideTile(ITileWide310x150ImageAndText01 largeTile)
            {
                largeTile.TextCaptionWrap.Text = captionText;
                largeTile.Image.Src            = $"ms-appx:///Tiles/{wideImageName}.png";
                largeTile.Square150x150Content = GetMediumTile(TileContentFactory.CreateTileSquare150x150Image());

                return(largeTile);
            }

            ITileSquare150x150Image GetMediumTile(ITileSquare150x150Image mediumTile)
            {
                mediumTile.Image.Src          = $"ms-appx:///Tiles/{mediumImageName}.png";
                mediumTile.Square71x71Content = GetSmallTile(TileContentFactory.CreateTileSquare71x71Image());
                return(mediumTile);
            }

            ITileSquare71x71Image GetSmallTile(ITileSquare71x71Image smallTile)
            {
                smallTile.Image.Src = $"ms-appx:///Tiles/{smallImageName}.png";
                return(smallTile);
            }
        }