Sdílet prostřednictvím


Obsah oznámení aplikace

Oznámení aplikací jsou flexibilní oznámení s textem, obrázky a tlačítky a vstupy. Tento článek popisuje prvky uživatelského rozhraní, které lze použít v oznámení aplikace, a poskytuje příklady kódu pro generování formátu XML pro oznámení aplikace.

Note

Termín "notifikace typu toast" se nahrazuje "notifikací aplikace". Oba tyto termíny odkazují na stejnou funkci Windows, ale v průběhu času postupně přestaneme používat termín "toast notification" v dokumentaci.

Začínáme

Oznámení aplikace jsou definována datovou částí XML, která je definována schématem oznámení aplikace. V současné době existují tři způsoby generování datové části XML pro oznámení aplikace. Příklady kódu v tomto článku ukazují všechny tři metody:

  • Ve verzi Windows App SDK 1.2 byla představena rozhraní API Microsoft.Windows.AppNotifications.Builder - tento obor názvů poskytuje rozhraní API, která umožňují snadno programově sestavit datovou část XML pro oznámení, aniž byste se museli starat o specifika formátu XML. Příklady kódu používající tato rozhraní API jsou na kartách s popiskem "Windows App SDK".
  • Syntaxe tvůrce Microsoft.Toolkit.Uwp.Notifications – tato rozhraní API jsou součástí sady nástrojů UWP Community Toolkit a poskytují podporu pro UWP aplikace. I když se tato rozhraní API dají používat také pro aplikace sady Windows App SDK a nadále je podporována, doporučujeme, aby nové implementace používaly rozhraní API Microsoft.Windows.AppNotifications.Builder . Pokud chcete používat rozhraní API sady Community Toolkit, přidejte do svého projektu balíček nuget oznámení sady upW Community Toolkit. Ukázky jazyka C# uvedené v tomto článku používají verzi 7.0.0 balíčku NuGet. Příklady kódu, které používají tato rozhraní API, jsou na kartách označených jako "Windows Community Toolkit".
  • Raw XML – Pokud chcete, můžete vytvořit vlastní kód pro generování řetězců XML v požadovaném formátu. Nezpracované příklady XML jsou na kartách označených jako XML.

Nainstalujte vizualizér oznámení. Tato bezplatná aplikace pro Windows vám pomůže navrhovat interaktivní oznámení aplikací tím, že při úpravách poskytuje okamžitý vizuální náhled vašeho toastu, podobně jako v editoru XAML nebo návrhovém zobrazení sady Visual Studio. Další informace najdete v tématu Vizualizér oznámení, nebo si můžete stáhnout Vizualizér oznámení zobchodu.

Tento článek se zabývá pouze vytvářením obsahu oznámení aplikace. Informace o odeslání oznámení po vygenerování datové části XML naleznete v tématu Odeslání oznámení místní aplikace.

Struktura oznámení aplikace

Mezi důležité základní komponenty datové části XML oznámení aplikace patří:

  • toast: Atribut spuštění tohoto prvku určuje, jaké argumenty se předají zpět do vaší aplikace, když uživatel klikne na toast, což vám umožní provést přímý odkaz na správný obsah, který toast zobrazoval. Další informace najdete v části Odeslání oznámení místní aplikace.
  • vizuální: Tento prvek představuje vizuální část oznámení, včetně obecného propojení, které obsahuje text a obrázky.
  • akce: Tento prvek představuje interaktivní část oznámení, včetně vstupů a akcí.
  • audio: Tento prvek určuje audio, které se přehrává, když se uživateli zobrazí toast zpráva.
var builder = new AppNotificationBuilder()
    .AddArgument("conversationId", "9813")

    .AddText("Some text")

    .AddButton(new AppNotificationButton("Archive")
        .AddArgument("action", "archive"))

    .SetAudioUri(new Uri("ms-appx:///Sound.mp3"));

Tady je vizuální znázornění obsahu oznámení aplikace:

Snímek obrazovky s oznámením aplikace s popisky pro oblast přiřazení v horní části zobrazující ikonu aplikace a název aplikace Notifications Visualizer. Prostřední část oznámení je označena jako vizuální oblast, která obsahuje tři řádky textu. Dolní část oznámení je označená jako akční oblast a obsahuje dvě tlačítka označená jako Přijmout a Odmítnout.

Oblast přisuzování

Oblast přiřazení je v horní části oznámení aplikace. Od Windows 11 se v této oblasti zobrazí název a ikona vaší aplikace. Oblast přiřazení obsahuje také tlačítko zavřít, které uživateli umožňuje rychle zavřít oznámení a nabídku se třemi tečkami, která uživateli umožňuje rychle zakázat oznámení pro vaši aplikaci nebo přejít na stránku Nastavení systému Windows pro oznámení vaší aplikace. Oblast přiřazení je nakonfigurována prostředím a nelze ji přepsat v XML souboru toastu, i když vaše aplikace může přidávat položky do místní nabídky oblasti přiřazení. Další informace viz akce místní nabídky.

Visual

Každé oznámení aplikace musí zadat vizuální prvek, kde musíte zadat obecnou vazbu informační zprávy a která může obsahovat text a obrázky. Tyto prvky se budou vykreslovat na různých zařízeních s Windows, včetně stolních počítačů, telefonů, tabletů a Xboxu.

Všechny atributy podporované v části vizuálu a jejích podřízených prvcích najdete v tématu Schéma oznámení aplikace.

Textové prvky

Každé oznámení aplikace musí mít aspoň jeden textový prvek a může obsahovat dva další textové prvky, všechny typy AdaptiveText.

Snímek obrazovky s oznámením aplikace se třemi řádky textu Horní řádek textu je tučný.

Od aktualizace Windows 10 Anniversary Update můžete pomocí vlastnosti HintMaxLines řídit, kolik řádků textu se zobrazí. Výchozí (a maximální) je až 2 řádky textu pro nadpis a až 4 řádky (kombinované) pro dva další prvky popisu (druhý a třetí adaptivní text).

var builder = new AppNotificationBuilder()
    .AddArgument("conversationId", 9813)
    .AddText("Adaptive Tiles Meeting", new AppNotificationTextProperties().SetMaxLines(1))
    .AddText("Conf Room 2001 / Building 135")
    .AddText("10:00 AM - 10:30 AM");

Vložený obrázek

Ve výchozím nastavení se obrázky zobrazují za jakýmikoli textovými prvky a vyplňují plnou šířku vizuální oblasti.

snímek obrazovky s oznámením aplikace zobrazující výchozí umístění obrázku, vložené a vyplňující celou šířku oblasti vizuálu.

var builder = new AppNotificationBuilder()
    .AddText("Featured image of the day.")
    .SetInlineImage(new Uri("ms-appx:///Images/InlineImage.png"));

AppNotificationManager.Default.Show(builder.BuildNotification());

Přepsání loga aplikace

Zadání hodnoty umístění "appLogoOverride" způsobí, že se obrázek zobrazí ve čtverci na levé straně vizuální oblasti. Název této vlastnosti odráží chování v předchozích verzích Windows, kde by obrázek nahradil výchozí obrázek loga aplikace. Ve Windows 11 se logo aplikace zobrazí ve vyhrazené oblasti, takže není přepsáno umístěním obrázku appLogoOverride.

Rozměry obrázku jsou 48× 488 pixelů při 100% škálování. Obecně doporučujeme poskytnout verzi souboru ikon pro každý faktor měřítka: 100%, 125%, 150%, 200%a 400%.

snímek obrazovky s oznámením aplikace zobrazující umístění obrázku přepsání loga aplikace na čtverec na levé straně vizuální oblasti oznámení.

var builder = new AppNotificationBuilder()
    .AddText("Featured image of the day.")
    .SetAppLogoOverride(new Uri("ms-appx:///Images/AppLogo.png"));

Oříznutí nápovědy

Pokyny pro styl Microsoftu doporučují reprezentaci profilových obrázků s kruhovým obrázkem, aby bylo možné zajistit konzistentní reprezentaci lidí napříč aplikacemi a prostředím. Nastavte vlastnost HintCrop na Kruh pro vykreslení obrázku s kruhovým oříznutím.

snímek obrazovky s oznámením aplikace, zobrazující umístění obrázku přepsaného loga aplikace, který je oříznutý do kruhu na levé straně vizuální oblasti rámu oznámení.

var builder = new AppNotificationBuilder()
    .AddText("Matt sent you a friend request")
    .AddText("Hey, wanna dress up as wizards and ride around on hoverboards?")
    .SetAppLogoOverride(new Uri("ms-appx:///Images/Profile.png"), AppNotificationImageCrop.Circle);

Obrázek hlavního hrdiny

New in Anniversary Update: Oznámení aplikací můžou zobrazovat hlavní obrázek, což je doporučený ToastGenericHeroImage výrazně zobrazený v banneru oznámení a v Centru oznámení. Rozměry obrázku jsou 364 × 180 pixelů při 100% škálování.

Snímek obrazovky s oznámením aplikace, kde je umístěn hlavní obrázek nad oblastí popisu.

var builder = new AppNotificationBuilder()
    .AddText("Marry Anne")
    .AddText("Check out where we camped last night!")
    .SetHeroImage(new Uri("ms-appx:///Images/HeroImage.png"));

Omezení velikosti obrázku

Obrázky, které používáte v informačním oznámení, mohou pocházet z...

  • http://
  • ms-appx:///
  • ms-appdata:///

U vzdálených webových imagí HTTP a HTTPS platí omezení velikosti souboru jednotlivých imagí. V fall Creators Update (16299) jsme zvýšili limit na 3 MB u normálních připojení a 1 MB u měřených připojení. Před tím byly obrázky vždy omezeny na 200 kB.

Normální připojení Připojení s měřenými daty Před fall Creators Update
3 MB 1 MB 200 kB

Pokud obrázek překročí velikost souboru nebo se nepodaří stáhnout nebo vyprší časový limit, obrázek se zahodí a zobrazí se zbývající oznámení.

Text pro přiřazení

Novinka ve verzi Anniversary Update: Pokud potřebujete odkazovat na zdroj obsahu, můžete použít text přisuzování. Tento text se vždy zobrazí pod libovolnými textovými prvky, ale nad vloženými obrázky. Text používá mírně menší velikost než standardní textové prvky, které pomáhají odlišit od běžných textových prvků.

Ve starších verzích Windows, které nepodporují atribuční text, se text jednoduše zobrazí jako další textový prvek (za předpokladu, že ještě nemáte maximálně tři textové prvky).

snímek obrazovky s vyskakovacím oznámením ukazujícím text přisuzování

var builder = new AppNotificationBuilder()
    .AddText("Marry Anne")
    .AddText("Check out where we camped last night!")
    .SetAttributionText("via SMS");
    .SetHeroImage(new Uri("ms-appx:///Images/HeroImage.png"));

Vlastní časové razítko

Novinka ve službě Creators Update: Teď můžete časové razítko poskytnuté systémem přepsat vlastním časovým razítkem, které přesně představuje, když se vygenerovala zpráva, informace nebo obsah. Toto časové razítko je viditelné v Centru oznámení.

Snímek obrazovky s oznámením v Centru oznámení s vlastním časovým razítkem

Další informace o použití vlastního časového razítka najdete v tématu vlastní časová razítka na oznámení.

var builder = new AppNotificationBuilder()
    .AddText("Matt sent you a friend request")
    .AddText("Hey, wanna dress up as wizards and ride around on hoverboards?")
    .SetTimeStamp(new DateTime(2017, 04, 15, 19, 45, 00, DateTimeKind.Utc));

Ukazatel průběhu

Novinka ve službě Creators Update: Na oznámení o průběhu aplikace můžete poskytnout indikátor průběhu, který uživateli umožní informovat o průběhu operací, jako jsou stahování.

snímek obrazovky oznámení typu toast zobrazující indikátor průběhu

Další informace o používání ukazatele průběhu najdete v tématu toastový ukazatel průběhu.

Headers

Novinka ve službě Creators Update: Oznámení můžete seskupit pod záhlavími v Centru oznámení. Můžete například seskupit zprávy ze skupinového chatu pod záhlavím nebo oznámení o společném motivu pod záhlavím nebo více.

Snímek obrazovky centra akcí zobrazující více oznámení prohlížeče oznámení aplikace uspořádané pod záhlavím označeném

Další informace o použití záhlaví najdete v tématu toastové záhlaví.

Adaptivní obsah

Novinka ve verzi Anniversary Update: Kromě obsahu uvedeného výše můžete také zobrazit další adaptivní obsah, který je viditelný při rozbalení oznámení.

Tento další obsah je určen pomocí Adaptive, podrobnosti najdete v dokumentaci k adaptivním dlaždicím .

Všimněte si, že veškerý adaptivní obsah musí být obsažený v adaptivní skupině. Jinak nebude vykresleno adaptivním způsobem.

Sloupce a textové prvky

Tady je příklad, kdy se používají sloupce a některé pokročilé adaptivní textové prvky. Vzhledem k tomu, že textové prvky jsou v AdaptiveGroup, podporují všechny vlastnosti bohatého adaptivního stylu.

snímek obrazovky oznámení typu toast zobrazující skupiny textových prvků zarovnané k levému a pravému okraji vizuální oblasti oznámení.

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support adaptive text elements.

Buttons

Tlačítka dělají váš toast interaktivnějším a umožňují uživateli rychle jednat na oznámení vaší aplikace, aniž by přerušili svůj aktuální pracovní postup. Uživatelé mohou například odpovědět na zprávu přímo z upozornění nebo odstranit e-mail, aniž by museli otevírat e-mailovou aplikaci. Tlačítka se zobrazí v rozbalené části oznámení.

Chcete-li se dozvědět více o kompletní implementaci tlačítek, podívejte se na Odeslání místních notifikací.

Tlačítka můžou aplikaci aktivovat následujícími způsoby:

  • Aplikace se aktivuje v popředí s argumentem, který lze použít k přechodu na konkrétní stránku nebo kontext.
  • Prostřednictvím spuštění protokolu se aktivuje jiná aplikace.
  • Aktivace na pozadí je explicitně podporovaná pro aplikace pro UPW. U aplikací sady Windows App SDK se aplikace vždy spustí v popředí. Aplikace může volat AppInstance.GetActivatedEventArgs zjistit, jestli byla aktivace spuštěna oznámením, a určit z předaných argumentů, jestli se má aplikace v popředí plně spustit, nebo pouze zpracovat oznámení a ukončit.
  • Systémové akce, jako je odsunutí nebo zavření oznámení, jsou podporovány jak pro aplikace UWP, tak pro Windows App SDK. Rozhraní API AppNotificationBuilder tento scénář nepodporují, ale aplikace sady Windows App SDK můžou tento scénář implementovat pomocí rozhraní API Microsoft.Windows.AppNotifications.Builder nebo nezpracovaného KÓDU XML.

Note

Můžete mít až 5 tlačítek (včetně položek místní nabídky, které probereme později).

snímek obrazovky s oznámením typu toast, který zobrazuje řádek textu následovaný řádkem se dvěma tlačítky definovanými akčními prvky.

new ToastContentBuilder()
    var builder = new AppNotificationBuilder()
        .AddText("New product in stock!")
        .AddButton(new AppNotificationButton("See more details")
            .AddArgument("action", "viewDetails"))
            .AddArgument("contentId", "351")
        .AddButton(new AppNotificationButton("Remind me later")
            .AddArgument("action", "remindLater"))
            .AddArgument("contentId", "351");

Tlačítka s ikonami

K tlačítkům můžete přidat ikony. Tyto ikony jsou bílé průhledné obrázky o rozměrech 16 × 16 pixelů s měřítkem 100% a neměly by mít v sobě žádné odsazení. Pokud se rozhodnete umístit ikony do výstražného oznámení, musíte poskytnout ikony pro všechna tlačítka v oznámení, protože to změní styl vašich tlačítek na ikonová tlačítka.

Note

Pro usnadnění přístupu nezapomeňte zahrnout kontrastně bílou verzi ikony (černá ikona pro bílé pozadí), aby se po zapnutí režimu Vysoký kontrast bílá ikona zobrazovala. Další informace najdete v tématu Podpora oznámení dlaždice a vyskakovacího oznámení pro jazyk, měřítko a vysoký kontrast.

Snímek obrazovky s oznámením aplikace, které používá tlačítka s ikonami

new ToastContentBuilder()
    var builder = new AppNotificationBuilder()
        .AddText("Return books to the library.")
        .AddButton(new AppNotificationButton("Accept")
            .AddArgument("action", "accept")
            .SetIcon(new Uri("ms-appx:///Images/Accept.png")))
        .AddButton(new AppNotificationButton("Snooze")
            .AddArgument("action", "snooze")
            .SetIcon(new Uri("ms-appx:///Images/Snooze.png")))
        .AddButton(new AppNotificationButton("Dismiss")
            .AddArgument("action", "dismiss")
            .SetIcon(new Uri("ms-appx:///Images/Dismiss.png")));

Novinka ve Windows 11 Update: Popisy tlačítek můžete přidat do ikon pomocí vlastnosti HintToolTip v XML. To je ideální, pokud tlačítka mají ikony, ale žádný obsah, protože tím zajistíte, abyste mohli předat text, který může program Předčítání ve Windows číst. Pokud je ale obsah k dispozici, program Předčítání přečte obsah bez ohledu na to, co se předá v popisu.

var button = new AppNotificationButton("Reply")
    .AddArgument("action", "reply");

if (AppNotificationButton.IsToolTipSupported())
{
    button.ToolTip = "Click to reply.";
}

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .AddButton(button); 

Tlačítka s barvami

Novinka ve Windows 11 Update: Do tlačítek můžete přidat červenou nebo zelenou barvu pomocí přidání atributu useButtonStyle k XML elementu toast a atributu hint-buttonStyle k XML elementu akce, jak je znázorněno níže.

Snímek obrazovky s oznámením se třemi tlačítky, obě levá tlačítka jsou zelená s ikonami pro zahájení videohovoru nebo spuštění zvukového hovoru. Třetí tlačítko je červené a má ikonu pro odmítnutí hovoru.

var builder = new AppNotificationBuilder()
    .SetScenario(AppNotificationScenario.IncomingCall)
    .AddText("Andrew Bares", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .AddText("Incoming Call - Mobile", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .SetInlineImage(new Uri("ms-appx:///Images/Profile.png"),
        AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton()
        .SetToolTip("Answer Video Call")
        .SetButtonStyle(AppNotificationButtonStyle.Success)
        .SetIcon(new Uri("ms-appx:///Images/Video.png"))
        .AddArgument("videoId", "123"))
    .AddButton(new AppNotificationButton()
        .SetToolTip("Answer Phone Call")
        .SetButtonStyle(AppNotificationButtonStyle.Success)
        .SetIcon(new Uri("ms-appx:///Images/Call.png"))
        .AddArgument("callId", "123"))
    .AddButton(new AppNotificationButton()
        .SetToolTip("Hang Up")
        .SetButtonStyle(AppNotificationButtonStyle.Critical)
        .SetIcon(new Uri("ms-appx:///Images/HangUp.png"))
        .AddArgument("hangUpId", "123"));

Akce místní nabídky

New in Anniversary Update: Do stávající kontextové nabídky, která se zobrazí, když uživatel klikne pravým tlačítkem na vaše oznámení toastu nebo vybere ikonu kontextové nabídky, můžete přidat další akce.

Note

Na starších zařízeních se tyto další akce místní nabídky jednoduše zobrazí jako běžná tlačítka v oznámení.

Nad dvěma výchozími položkami systému se zobrazí další akce místní nabídky, které přidáte (například "Ztlumit skupinový chat po dobu 1 hodiny").

oznámení s místní nabídkou

var builder = new AppNotificationBuilder()
    .AddText("Camping this weekend?")
    .SetAppLogoOverride(new Uri("ms-appx:///images/Reply.png"), AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton("Mute group chat for 1 hour")
        .AddArgument("action", "mute")
        .SetContextMenuPlacement());

Note

Další položky místní nabídky přispívají k celkovému limitu 5 tlačítek na toastu.

Aktivace dalších položek místní nabídky se zpracovává stejně jako tlačítky toastů.

Inputs

Jsou zadány uvnitř oblasti Akcí oznámení aplikace, což znamená, že jsou viditelné pouze při rozbalení oznámení.

Textové pole Rychlá odpověď

Pokud chcete povolit textové pole rychlé odpovědi (například v aplikaci pro zasílání zpráv), přidejte textový vstup a tlačítko a odkazujte na ID textového vstupního pole, aby se tlačítko zobrazilo vedle vstupního pole. Volitelná ikona pro tlačítko, pokud je k dispozici, by měla být obrázkem o velikosti 32 × 32 pixelů bez odsazení, s bílými pixely nastavenými na průhlednost a v měřítku 100%.

Snímek obrazovky s upozorněním obsahujícím profilový obrázek a několik řádků textu. Součástí je také textové pole pro přímé zadávání do upozornění a tlačítko pro odeslání odpovědi.

var builder = new AppNotificationBuilder()
    .AddTextBox("textBox", "Type a reply", "Reply")
    .AddButton(AppNotificationButton("Send")
        .AddArguments("action", "Send")
        .SetInputId("textBox"))
    .BuildNotification();

Vstupy s panelem tlačítek

Můžete mít také jeden (nebo mnoho) vstupů s normálními tlačítky zobrazenými pod vstupy.

Snímek obrazovky s oznámením aplikace s řádkem textu, textovým polem a řádkem se dvěma tlačítky označenými jako

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support quick reply text boxes.

Výběrový vstup

Kromě textových polí můžete také použít výběrové menu.

Snímek obrazovky s oznámením aplikace s řádkem textu, vstupem výběru s vybranou položkou Oběd a řádkem se dvěma tlačítky označenými jako

var builder = new AppNotificationBuilder()
    .AddText("4th coffee?")
    .AddText("When do you plan to come in tomorrow?")
    .AddComboBox(new AppNotificationComboBox("time")
        .SetTitle("Select an item:")
        .AddItem("breakfast", "Breakfast")
        .AddItem("lunch", "Lunch")
        .AddItem("dinner", "Dinner")
        .SetSelectedItem("lunch"))
    .AddButton(new AppNotificationButton("Reply")
        .AddArgument("action", "reply")
        .AddArgument("threadId", "9218")
        .SetContextMenuPlacement())
    .AddButton(new AppNotificationButton("Call restaurant")
        .AddArgument("action", "videocall")
        .AddArgument("threadId", "9218")
        .SetContextMenuPlacement());

Snooze/dismiss

Pomocí nabídky výběru a dvou tlačítek můžeme vytvořit oznámení připomenutí, které využívá systémové akce pro odložení a zavření. Nezapomeňte nastavit scénář na Připomenutí, aby se oznámení chovalo jako připomenutí.

Snímek obrazovky s oznámením aplikace s řádky textu popisující čas a umístění schůzky V poli pro výběr je vybráno

Tlačítko Snooze propojíme se vstupem nabídky výběru pomocí vlastnosti SelectionBoxId na tlačítku informačního lístku.

Syntaxe Microsoft.Windows.AppNotifications.Builder v současné době nepodporuje aktivaci systému. Tento scénář je ale podporovaný pro aplikace sady Windows App SDK a můžete pro tento scénář vytvářet oznámení pomocí rozhraní API nebo nezpracovaného Microsoft.Toolkit.Uwp.Notifications KÓDU XML.

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support system activation. 
// But this scenario is supported for Windows App SDK apps, and you can build notifications for this 
// scenario using the `Microsoft.Toolkit.Uwp.Notifications` APIs or raw XML.

Pro použití akcí odložení a zavření systému:

  • Zadání toastButtonSnooze nebo toastButtonDismiss
  • Volitelně zadejte vlastní řetězec obsahu:
  • Pokud nezadáte žádný řetězec, automaticky použijeme lokalizované řetězce pro "Odložit" a "Zrušit".
  • Volitelně zadejte SelectionBoxId:
  • Pokud nechcete, aby uživatel zvolil interval odkladu a místo toho chcete, aby se vaše oznámení odložilo pouze jednou na systémem definovaný interval (který je konzistentní v celém operačním systému), pak vůbec nevytvářejte žádný vstup <>.
  • Pokud chcete poskytnout výběry intervalů odložení: – Zadejte SelectionBoxId v akci odložení – Spárujte ID vstupu s SelectionBoxId akce odložení – Hodnota ToastSelectionBoxItemmusí být nezáporné celé číslo, které představuje interval odložení v minutách.

Audio

Vlastní zvuk byl vždy podporován v aplikaci Mobile a je podporován v desktopové verzi 1511 (build 10586) nebo novější. Vlastní zvuk lze odkazovat pomocí následujících cest:

  • ms-appx:///
  • ms-appdata:///
var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetAudioUri(new Uri("ms-appx:///Audio/NotificationSound.mp3"));

Alternativně si můžete vybrat ze seznamu ms-winsoundevents, které byly vždy podporovány na obou platformách.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetAudioEvent(AppNotificationSoundEvent.Alarm, AppNotificationAudioLooping.Loop);

Informace o zvuku v oznámeních aplikací najdete na stránce zvukového schématu . Informace o tom, jak odeslat oznámení aplikace s použitím vlastního zvuku, najdete v části vlastní zvuk v rámci vyskakovacích oznámení.

Scenarios

Pokud chcete vytvářet důležitá oznámení, alarmy, připomenutí a oznámení příchozích hovorů, použijte jednoduše normální oznámení aplikace s hodnotou přiřazenou scénář. Tento scénář upravuje několik chování a vytváří konzistentní a jednotné uživatelské prostředí. Existují čtyři možné hodnoty scénáře :

  • Reminder
  • Alarm
  • IncomingCall
  • Urgent

Reminders

Ve scénáři připomenutí zůstane oznámení na obrazovce, dokud ho uživatel nespustí nebo provede akci. Oznámení aplikace ve Windows Mobile se rovněž zobrazí již rozbalené. Přehraje se zvuk připomenutí. V oznámení aplikace musíte zadat alespoň jedno tlačítko. Jinak bude oznámení považováno za normální oznámení.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetScenario(AppNotificationScenario.Reminder);

Alarms

Alarmy se chovají stejně jako připomenutí, ale navíc přehrávají zvuk opakovaně s výchozím zvukem alarmu. V oznámení aplikace musíte zadat alespoň jedno tlačítko. Jinak bude oznámení považováno za normální oznámení.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetScenario(AppNotificationScenario.Alarm)
    .AddButton(new AppNotificationButton("Dismiss")
        .AddArgument("action", "dismiss"));

Příchozí hovory

Oznámení příchozích hovorů se zobrazují předem rozbalené ve speciálním formátu hovoru a zůstávají na obrazovce uživatele, dokud je nezavedete. Vyzváněcí tón bude ve výchozím nastavení smyčkovat. Na zařízeních s Windows Mobile se zobrazují na celé obrazovce.

oznámení příchozího hovoru

var builder = new AppNotificationBuilder()
    .SetScenario(AppNotificationScenario.IncomingCall)
    .AddText("Andrew Bares", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
    .AddText("incoming call - mobile", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .SetInlineImage(new Uri("ms-appx:///images/profile.png"),
        AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton("Text reply")
        .SetToolTip("Text reply")
        .SetIcon(new Uri("ms-appx:///images/reply.png"))
        .AddArgument("textId", "123"))
    .AddButton(new AppNotificationButton("Reminder")
        .SetToolTip("Reminder")
        .SetIcon(new Uri("ms-appx:///images/reminder.png"))
        .AddArgument("reminderId", "123"))
    .AddButton(new AppNotificationButton("Ignore")
        .SetToolTip("Ignore")
        .SetIcon(new Uri("ms-appx:///images/ignore.png"))
        .AddArgument("ignoreId", "123"))
    .AddButton(new AppNotificationButton("Answer")
        .SetToolTip("Answer")
        .SetIcon(new Uri("ms-appx:///images/answer.png"))
        .AddArgument("answerId", "123"));

Důležitá oznámení

Important

Vyžaduje: Abyste mohli používat důležitá oznámení, musíte používat build Windows Insider Preview 22546 nebo novější.

Důležitá oznámení umožňují uživatelům mít větší kontrolu nad tím, jaké aplikace prvotních a třetích stran mohou zasílat oznámení s vysokou prioritou (naléhavé/důležité), které můžou prolomit funkci Focus Assist (Nerušit). To je možné upravit v nastavení oznámení.

Snímek obrazovky urgentního oznámení aplikace, které má vykřičník v oblasti přiřazení vedle názvu aplikace. Obrázek také zobrazuje systémem iniciované oznámení aplikace, které nabízí uživateli možnost povolit nebo zakázat naléhavá oznámení z aplikace.

var builder = new AppNotificationBuilder()
    .AddText("Adaptive Tiles Meeting", 
        new AppNotificationTextProperties()
            .SetMaxLines(1))
    .AddText("Conf Room 2001 / Building 135")
    .AddText("10:00 AM - 10:30 AM");

if (AppNotificationBuilder.IsUrgentScenarioSupported())
{
    builder.SetScenario(AppNotificationScenario.Urgent);
}

Lokalizace a přístupnost

Dlaždice a oznámení aplikací mohou načítat řetězce a obrázky přizpůsobené jazyku zobrazení, měřítku zobrazení, vysokému kontrastu a dalším kontextům za běhu. Pro více informací si přečtěte Podpora oznámení dlaždic a vyskakovacích upozornění pro jazyk, měřítko a vysoký kontrast.

Zpracování aktivace

Informace o tom, jak zpracovávat aktivace aplikací (uživatel klikající na toast nebo tlačítka na toastu), najdete v tématu Odeslání místního toastu.