Skip Ribbon Commands
Skip to main content

​​​​​​​​

विकस्टार्ट: हवामान टाईल आणि टोस्ट नोटिफिकेशन पाठवणे



विंडोज 10 च्या वर्धापनदिनाच्या अपडेटमध्ये आम्ही टोस्ट नोटिफिकेशन्सना लाईव्ह टाईल्ससारखेच दृश्यात्मकरित्या-सक्षम बनवले आहे. या क्विकस्टार्टमध्ये, हवामानाचा अंदाज दाखवणारे टोस्ट नोटिफिकेशन पाठवण्याकरिता आपल्या टाईल नोटिफिकेशनच्या 5-दिवसाच्या हवामानाच्या अंदाजाचा पुन्हा वापर कसा करायचा हे आम्ही आपल्याला दाखवू.

रूंद लाईव्ह टाईल
 
टोस्ट नोटिफिकेशन​

1. नोटिफिकेशन्सएक्सटेंशन्सNuGet पॅकेज इंस्टॉल करणे

नोटिफिकेशन्सना कोडद्वारे बनवण्याकरिता आम्ही नोटिफिकेशन्सएक्सटेंशन्सचा वापर करण्याची आग्रही शिफारस करतो, जे नोटिफिकेशन XML कंटेंटकरिता ऑब्जेक्ट मॉडेल प्रदान करते. आपण स्वत: नोटिफिकेशन XML बनवू शकता, परंतु ते त्रुटीपूर्ण आणि अव्यवस्थित असेल. नोटिफिकेशन्सएक्सटेंशन्सची रचना आणि देखभाल अश्या टीमने केली आहे ज्यांच्याजवळ मायक्रोसॉफ्ट मधील नोटिफिकेशन्सचे स्वामित्व आहे.

NuGet मधून NotificationsExtensions.Win10 इंस्टॉल करा (आवृत्ती 14332.0.0 किंवा त्यानंतरची आवृत्ती निवडण्यास विसरू नका).

2. नेमस्पेस डिक्लेरेशन्स अॅड करा

Windows.UI.Notifications मध्ये टाईल आणि टोस्ट API's चा समावेश आहे.

C# with NotificationsExtensions

 

usingNotificationsExtensions;

usingNotificationsExtensions.Tiles;

usingNotificationsExtensions.Toasts;

3. लाईव्ह टाईल कशी बनवायची

आम्ही आधी लाईव्ह टाईल कशी बनवल्या गेली आहे हे स्पष्ट करू, कारण की यासारखाच अॅडाप्टिव्ह कंटेंट टोस्ट नोटिफिकेशनवर वापरण्यात आला आहे. जर आपण अॅडाप्टिव्ह नोटिफिकेशन्सबद्दल नवखे असाल तर स्टोरमधून Notifications Visualizer इंस्टॉल करा, जो आपल्याला अॅडाप्टिव्ह कंटेंटचे संपादन करण्याची आणि लगेच दृश्यात्मक प्रिव्ह्यु बघण्याची सुविधा देईल.

टाईल नोटिफिकेशनला सबग्रुप्समध्ये विभाजित करा

आपल्याला जे टाईल नोटिफिकेशन बनवायचे आहे ते प्रत्यक्षात 5 सबग्रुप्स आहेत... प्रत्येक दिवशीच्या हवामानाच्या अंदाजाकरिता एक. खालील चित्रामध्ये, दुसऱ्या सबग्रुपला लाल रेषेद्वारे ठळकपणे दाखवलेले आहे. आपण अशी एक पद्धत बनवू शकतो जी या सबग्रुप्सना उत्पन्न करेल, त्यामुळे आपण फक्त एकदाच सबग्रुप कोड लिहू.


C# with NotificationsExtensions

 

privateAdaptiveSubgroupGenerateSubgroup(stringday, stringimg, inttempHi, inttempLo)

{

    returnnewAdaptiveSubgroup()

    {

        HintWeight = 1,

 

        Children =

        {

            // Day

            newAdaptiveText()

            {

                Text = day,

                HintAlign = AdaptiveTextAlign.Center

            },

 

            // Image

            newAdaptiveImage()

            {

                Source = img,

                HintRemoveMargin = true

            },

 

            // High temp

            newAdaptiveText()

            {

                Text = tempHi + "°",

                HintAlign = AdaptiveTextAlign.Center

            },

 

            // Low temp

            newAdaptiveText()

            {

                Text = tempLo + "°",

                HintAlign = AdaptiveTextAlign.Center,

                HintStyle = AdaptiveTextStyle.CaptionSubtle

            }

        }

    };

}

रूंद टाईलकरिता कंटेंट उत्पन्न करणे

पुढे, आपल्याला रूंद टाईलकरिता आपल्या वरील सबग्रुप्सचा वापर करून वास्तविक कंटेंटची निर्मिती करणे आवश्यक आहे. आपण याला एका वेगळ्या पद्धतीमध्ये विभाजित करू, कारण की आपल्याला लहान, रूंद आणि मोठ्या टाईलच्या कंटेंटची निर्मिती करण्याकरिताही पद्धतींची गरज भासेल (या पद्धतींना या क्विकस्टार्टमधून वगळण्यात आलेले आहे परंतु त्यांना खाली संसाधनांमध्ये संपूर्ण कोड नमुन्यात बघता येईल).


C# with NotificationsExtensions

 

privateTileBindingGenerateTileBindingWide()

{

    returnnewTileBinding()

    {

        Content = newTileBindingContentAdaptive()

        {

            Children =

            {

                newAdaptiveGroup()

                {

                    Children =

                    {

                        GenerateSubgroup("Mon", "Mostly Cloudy.png", 63, 42),

                        GenerateSubgroup("Tue", "Cloudy.png", 57, 38),

                        GenerateSubgroup("Wed", "Sunny.png", 59, 43),

                        GenerateSubgroup("Thu", "Sunny.png", 62, 42),

                        GenerateSubgroup("Fri", "Sunny.png", 71, 66)

                    }

                }

            }

        }

    };

}

टाईल नोटिफिकेशन कंटेंटची निर्मिती करणे

शेवटी आपण संपूर्ण टाईल नोटिफिकेशन कंटेंटची निर्मिती केलेली आहे, ज्यामध्ये टाईलच्या सर्व वेगवेगळ्या आकारांकरिता कंटेंटचा समावेश असेल. आधी नमूद केल्याप्रमाणे, लहान, मध्यम आणि मोठ्या टाईल्सकरिता पद्धतींना या क्विकस्टार्टमधून वगळलेले आहे परंतु त्यांना संसाधने विभागामध्ये उपलब्ध असलेल्या संपूर्ण कोड नमुन्यामध्ये बघता येईल.

C# with NotificationsExtensions

 

publicTileContentGenerateTileContent()

{

    returnnewTileContent()

    {

        Visual = newTileVisual()

        {

            TileSmall = GenerateTileBindingSmall(),

            TileMedium = GenerateTileBindingMedium(),

            TileWide = GenerateTileBindingWide(),

            TileLarge = GenerateTileBindingLarge(),

 

            // Set the base URI for the images, so we don't redundantly specify the entire path

            BaseUri = newUri("Assets/NotificationAssets/", UriKind.Relative)

        }

    };

}

टाईल नोटिफिकेशन पाठवणे

टाईल नोटिफिकेशन कसे पाठवायचे हे शिकण्याकरिता कृपया Quickstart: Sending a local tile notification बघा.

4. टोस्ट नोटिफिकेशन कसे बनवावे

आता आपल्याजवळ आपले लाईव्ह टाईल नोटिफिकेशन आहे, तर त्यापैकी काही कोडचा वापर टोस्ट नोटिफिकेशन बनवण्याकरिता करूया!

https://msdnshared.blob.core.windows.net/media/2016/05/ToastNotification.jpg

टोस्ट नोटिफिकेशन कंटेंट निर्माण करणे

टोस्टचा आरंभ नेहमी टेक्स्ट घटकाने व्हायला हवा, त्यामुळे आधी आपण आजच्या हवामानाचे वर्णन करणारी टेक्स्ट स्ट्रींग अॅड करू. जर अॅडाप्टिव्ह टोस्ट सपोर्ट (कोड करिता खाली बघा) करीत असतील तर आपण पाच सबग्रुप्ससोबत एक ग्रुप अॅड करू शकतो जो आपण आपल्या लाईव्ह टाईलकरिताही वापरलेला होता. अन्यथा आपण अॅडाप्टिव्ह टोस्टला सपोर्ट न करणाऱ्या प्रणालींकरिता जास्तीचे दोन चाचणी घटकही अॅड करू शकतो (लक्षात घ्या की त्या प्रणालींवर आपण जास्तीत जास्त तीन मजकूर घटक घेऊ शकतो, त्यामुळेच आपण फक्त दोन अतिरिक्त मजकूर घटक जोडलेले आहेत).

C# with NotificationsExtensions

 

publicstaticToastContentGenerateToastContent()

{

    // Start by constructing the visual portion of the toast

    ToastBindingGeneric binding = newToastBindingGeneric();

 

    // We'll always have this summary text on our toast notification

    // (it is required that your toast starts with a text element)

    binding.Children.Add(newAdaptiveText()

    {

        Text = "Today will be mostly sunny with a high of 63 and a low of 42."

    });

 

    // If Adaptive Toast Notifications are supported

    if(IsAdaptiveToastSupported())

    {

        // Use the rich Tile-like visual layout

        binding.Children.Add(newAdaptiveGroup()

        {

            Children =

            {

                GenerateSubgroup("Mon", "Mostly Cloudy.png", 63, 42),

                GenerateSubgroup("Tue", "Cloudy.png", 57, 38),

                GenerateSubgroup("Wed", "Sunny.png", 59, 43),

                GenerateSubgroup("Thu", "Sunny.png", 62, 42),

                GenerateSubgroup("Fri", "Sunny.png", 71, 66)

            }

        });

    }

 

    // Otherwise...

    else

    {

        // We'll just add two simple lines of text

        binding.Children.Add(newAdaptiveText()

        {

            Text = "Monday <imgsrc="https://s.w.org/images/core/emoji/72x72/26c5.png" alt="⛅" draggable="false" class="emoji"> 63° / 42°"

        });

 

        binding.Children.Add(newAdaptiveText()

        {

            Text = "Tuesday <imgsrc="https://s.w.org/images/core/emoji/72x72/2601.png" alt="☁" draggable="false" class="emoji"> 57° / 38°"

        });

    }

 

    // Construct the entire notification

    returnnewToastContent()

    {

        Visual = newToastVisual()

        {

            // Use our binding from above

            BindingGeneric = binding,

 

            // Set the base URI for the images, so we don't redundantly specify the entire path

            BaseUri = newUri("Assets/NotificationAssets/", UriKind.Relative)

        },

 

        // Include launch string so we know what to open when user clicks toast

        Launch = "action=viewForecast&zip=98008"

    };

}​

टोस्ट नोटिफिकेशन पाठवणे

टोस्ट नोटिफिकेशन कसे पाठवायचे (आणि उपयोगकर्त्याद्वारे नोटिफिकेशनवर क्लिक करण्याची हाताळणी कशी करायची) हे शिकण्याकरिता कृपया Quickstart: Sending a local toast notification and handling activations बघा.

अॅडाप्टिव्ह टोस्ट सपोर्टेड आहे किंवा नाही हे तपासणे

विंडोज 10 डेस्कटॉप आणि मोबाईलच्या (विंडोज 10 च्या वर्धापनदिनाच्या अपडेटकरिता) बिल्ड 14332 मध्ये अॅडाप्टिव्ह टोस्टचा समावेश करण्यात आला आहे. उपकरणांचे इतर गट अॅडाप्टिव्ह टोस्टना सपोर्ट करीत नाही आणि त्यामध्ये फक्त मजकूर घटक आणि प्रतिमांचाच समावेश असतो. जर आपण जुन्या प्रणालींना सपोर्ट करीत असाल तर आपल्याजवळ दोन पर्याय असतील: समान पेलोड पाठवा (ग्रुप्स जुन्या प्रणालींमध्ये टाकले जातील) किंवा आपल्या कोडला विभाजित करा आणि जेथे अॅडाप्टिव्ह टोस्ट सपोर्टेड असेल तेथे विशिष्ट नोटिफिकेशन पाठवा. आपण दृश्यात्मकरित्या-समृद्ध नोटिफिकेशन पाठवू शकतो किंवा नाही हे सांगण्याकरिता आपण या पद्धतीचा वापर करू शकतो...

C#

 

usingWindows.System.Profile;

 

privatestaticboolIsAdaptiveToastSupported()

{

    switch(AnalyticsInfo.VersionInfo.DeviceFamily)

    {

        // Desktop and Mobile started supporting adaptive toasts in build 14332

        case"Windows.Mobile":

        case"Windows.Desktop":

            returnGetOSVersion() > newVersion(10, 0, 14332, 0);

 

        // Other device families do not support adaptive toasts

        default:

            returnfalse;

    }

}

 

privatestaticVersion GetOSVersion()

{

    // The DeviceFamilyVersion is a string, which is actually a ulong number representing the version

    // https://www.suchan.cz/2015/08/uwp-quick-tip-getting-device-os-and-app-info/

 

    ulongversionAsLong = ulong.Parse(AnalyticsInfo.VersionInfo.DeviceFamilyVersion);

 

    ulongv1 = (versionAsLong& 0xFFFF000000000000L) >> 48;

    ulongv2 = (versionAsLong& 0x0000FFFF00000000L) >> 32;

    ulongv3 = (versionAsLong& 0x00000000FFFF0000L) >> 16;

    ulongv4 = (versionAsLong& 0x000000000000FFFFL);

 

    returnnewVersion((int)v1, (int)v2, (int)v3, (int)v4);

}

अंतिम टोस्ट नोटिफिकेशन!

अॅडाप्टिव्ह टोस्टला सपोर्ट करणाऱ्या प्रणालींकरिता आपला कोड दृश्यात्मकरित्या-समृद्ध नोटिफिकेशनची निर्मिती करतो आणि जुन्या प्रणालींकरिता आपला कोड क्लासिक मजकूर-आधारित नोटिफिकेशनची निर्मिती करतो.

अॅडाप्टिव्ह टोस्ट
क्लासिक टोस्ट​

​​​​​​​​​​​​​​​​​​​​​​​​​​​​

    Read More on....

This site uses Unicode and Open Type fonts for Indic Languages. Powered by Microsoft SharePoint 2013.
©2016 Microsoft Corporation. All rights reserved.