Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Important
Os metadados do dispositivo foram preteridos e serão removidos numa versão futura do Windows. Para obter informações sobre a substituição dessa funcionalidade, consulte Metadados de Contêiner do Pacote de Driver.
Os aplicativos de dispositivo UWP podem responder a eventos bidi (comunicação bidirecional) enviados de um driver de impressão v4. Este artigo apresenta notificações de impressão e mostra como a versão C# das configurações de impressão e o exemplo de notificações de impressão usa uma tarefa em segundo plano para responder à notificação de impressão. A tarefa em segundo plano demonstra como salvar detalhes de notificação no repositório de dados do aplicativo local, enviar notificações e atualizar um bloco e um selo. Para saber mais sobre aplicativos de dispositivo UWP em geral, consulte Conheça os aplicativos de dispositivo UWP.
A versão em C# das configurações de impressão e do exemplo de notificações de impressão demonstra a parte em segundo plano do aplicativo (a tarefa em segundo plano) no projeto BackgroundTask . The code for the background task is in the PrintBackgroundTask.cs file. The foreground app, the full-screen app that can be launched from Start, is in the DeviceAppForPrinters project. The InkLevel.xaml.cs file shows one way that notification details can be accessed from the foreground app. To work with print notifications, the sample uses the printer extension library in the PrinterExtensionLibrary project. A biblioteca de extensão da impressora fornece uma maneira conveniente de acessar as interfaces de extensão da impressora do driver de impressão v4. Para obter mais informações, consulte a visão geral da biblioteca de extensão da impressora.
Os exemplos de código mostrados neste artigo baseiam-se na versão C# das configurações de impressão e no exemplo de notificações de impressão . Este exemplo também está disponível em JavaScript e C++. Como o C++ pode acessar o COM diretamente, a versão C++ do exemplo não inclui projetos de biblioteca de código. Baixe os exemplos para ver as versões mais recentes do código.
Print notifications
As notificações de impressão permitem que seu aplicativo de dispositivo UWP informe ao usuário de eventos importantes da impressora durante a impressão, como um congestionamento de papel, abrir a porta da impressora, baixos níveis de tinta ou erros de papel fora do papel da impressora. Quando uma impressora dispara uma notificação, o agente de eventos do sistema executa a tarefa em segundo plano do seu aplicativo. A partir daí, a tarefa em segundo plano pode salvar os detalhes da notificação, enviar um sistema, atualizar um bloco, atualizar um selo ou não fazer nada. Salvando detalhes de notificação, seu aplicativo pode fornecer uma experiência que ajuda os usuários a entender e corrigir seus problemas de impressora.
Os fabricantes de impressora devem implementar Bidi e o arquivo XML DriverEvent em seu driver de impressão v4 para usar notificações de impressão com seus aplicativos de dispositivo UWP. For more information, see Bidirectional Communications.
Quando um DriverEvent ocorre e a tarefa em segundo plano de um aplicativo de dispositivo UWP é iniciada, o aplicativo tem várias opções sobre como ele pode continuar. Para obter mais informações sobre o fluxo que leva ao início da tarefa, consulte Suporte ao Driver para interface do usuário personalizada.
A tarefa em segundo plano pode optar por:
- Do nothing
- Salvar os detalhes da notificação no repositório de dados do aplicativo local
- Atualizar uma notificação de bloco do aplicativo UWP
- Atualizar um selo de notificação de aplicativo UWP
- Enviar uma notificação do sistema de aplicativo UWP
A notificação de bloco ou notificação do sistema pode permitir que o usuário inicie convenientemente seu aplicativo em primeiro plano. When the foreground app is launched, it can use the OnLaunched method in App.xaml.cs to check if it was launched by a tile or toast. Se fosse, o aplicativo em primeiro plano poderia acessar todos os detalhes de notificação de impressão no repositório de dados do aplicativo local.
Prerequisites
Antes de começar:
Verifique se a impressora está instalada usando um driver de impressão v4. Para obter mais informações, consulte Desenvolvimento de drivers de impressão v4.
Configure seu computador de desenvolvimento. See Getting started for information about downloading the tools and creating a developer account.
Associe seu aplicativo à loja. Para obter mais informações, consulte Criar um aplicativo de dispositivo UWP.
Crie metadados de dispositivo para sua impressora que a associe ao seu aplicativo. Para obter mais informações, consulte Criar metadados do dispositivo.
Crie a interface do usuário para a página principal do aplicativo. Todos os aplicativos de dispositivo UWP podem ser iniciados desde o início, onde são exibidos em tela inteira. Use a experiência De início para realçar seu produto ou serviços de uma maneira que corresponda à identidade visual e aos recursos específicos de seus dispositivos. Não há restrições especiais sobre o tipo de controles de interface do usuário que ele pode usar. Para começar a usar o design da experiência em tela inteira, consulte os princípios de design da Microsoft Store.
If you're writing your app with C# or JavaScript, add the PrinterExtensionLibrary and DeviceAppForPrintersLibrary projects to your UWP device app solution. Você pode encontrar cada um desses projetos na amostra de notificações de impressão e configurações de impressão .
Como o C++ pode acessar o COM diretamente, os aplicativos C++ não exigem uma biblioteca separada para trabalhar com o contexto do dispositivo de impressora baseado em COM.
Etapa 1: Registrar tarefa em segundo plano
Para que o Windows reconheça que o aplicativo pode lidar com notificações de impressão, ele deve registrar uma extensão de tarefas em segundo plano para notificações de impressão. Essa extensão é declarada em um Extension elemento, com um Category atributo definido windows.backgroundTasks como e um EntryPoint atributo definido como BackgroundTask.PrintBackgroundTask. A extensão também inclui um Task elemento para indicar que dá suporte systemEvent a tipos de tarefa.
You can add the print background task extension on the Declarations tab of the Manifest Designer in Microsoft Visual Studio. Você também pode editar o manifesto do pacote do aplicativo XML manualmente, usando o Editor XML (Texto). Right-click the Package.appxmanifest file in Solution Explorer for editing options.
This example shows the background task extension in the Extension element, as it appears in the app package manifest file, Package.appxmanifest.
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest">
<Identity Name="Microsoft.SDKSamples.DeviceAppForPrinters.CS" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" Version="1.0.0.0" />
<Properties>
<DisplayName>Device App For Printers C# sample</DisplayName>
<PublisherDisplayName>Microsoft Corporation</PublisherDisplayName>
<Logo>Assets\storeLogo-sdk.png</Logo>
</Properties>
<Prerequisites>
<OSMinVersion>6.3.0</OSMinVersion>
<OSMaxVersionTested>6.3.0</OSMaxVersionTested>
</Prerequisites>
<Resources>
<Resource Language="x-generate" />
</Resources>
<Applications>
<Application Id="DeviceAppForPrinters" Executable="$targetnametoken$.exe" EntryPoint="DeviceAppForPrinters.App">
<VisualElements DisplayName="Device App For Printers C# sample" Logo="Assets\squareTile-sdk.png"
SmallLogo="Assets\smallTile-sdk.png" Description="DeviceAppForPrinters C# sample"
ForegroundText="light" BackgroundColor="#00b2f0" ToastCapable="true">
<DefaultTile ShowName="allLogos" ShortName="App4PrinterCS" WideLogo="Assets\tile-sdk.png" />
<SplashScreen Image="Assets\splash-sdk.png" BackgroundColor="#00b2f0" />
</VisualElements>
<Extensions>
<Extension Category="windows.backgroundTasks" EntryPoint="BackgroundTask.PrintBackgroundTask">
<BackgroundTasks>
<Task Type="systemEvent" />
</BackgroundTasks>
</Extension>
<Extension Category="windows.printTaskSettings" Executable="$targetnametoken$.exe" EntryPoint="DeviceAppForPrinters.App" />
</Extensions>
</Application>
</Applications>
</Package>
Etapa 2: Configurar metadados do dispositivo
Ao usar o Assistente de Criação de Metadados do Dispositivo para associar seu aplicativo ao seu dispositivo, conclua a caixa Manipuladores de notificação na página Especificar informações do aplicativo de dispositivo UWP . Isso ajuda a garantir que a tarefa em segundo plano do aplicativo seja chamada durante uma notificação de impressão.
For step-by-step instructions on how to edit your device metadata, see the Testing section.
Etapa 3: Criar a interface do usuário
Antes de criar seu aplicativo, você deve trabalhar com seus designers e sua equipe de marketing para projetar a experiência do usuário. A experiência do usuário deve projetar os aspectos de identidade visual da sua empresa e ajudá-lo a criar uma conexão com seus usuários.
Design guidelines
É importante examinar as diretrizes do aplicativo da Microsoft Store antes de projetar sua experiência de bloco e selo. As diretrizes ajudam a garantir que seu aplicativo forneça uma experiência intuitiva que seja consistente com outros aplicativos UWP.
- Diretrizes de para blocos e selos
- Diretrizes para notificações de toast
Para a página principal do seu aplicativo, tenha em mente que o Windows 8.1 pode exibir vários aplicativos em vários tamanhos em um único monitor. Confira as diretrizes a seguir para saber mais sobre como seu aplicativo pode se refluxar normalmente entre tamanhos de tela, tamanhos de janela e orientações.
- Diretrizes para tamanhos de janela e dimensionamento para telas
- Diretrizes para redimensionar janelas para layouts altos e estreitos
Best practices
Não inclua palavras de ação em notificações. Na mensagem de notificação, não use texto que diga aos usuários para enviarem por push, pressionarem ou selecionarem a notificação. Os usuários já entendem que podem pressionar um sistema para encontrar mais informações. Por exemplo, basta escrever "Sua impressora está com pouca tinta" em vez de "Sua impressora está com pouca tinta. Pressione para solucionar problemas".
Mantenha as interações simples. Tudo o que é mostrado na experiência de notificações deve estar relacionado à notificação. Por exemplo, uma página de notificação sobre um jam de papel deve conter apenas links e informações sobre como resolver esse problema. Ele não deve conter links para experiências não relacionadas, como tinta de compra ou outras informações de suporte.
Use multimedia. Use fotos, vídeos ou ilustrações reais do dispositivo para ajudar os usuários a resolver rapidamente um problema com seu dispositivo.
Mantenha os usuários dentro do contexto do seu aplicativo. Ao fornecer informações sobre um problema, não vincule a materiais de suporte online ou outros. Mantenha o usuário no contexto do aplicativo.
Etapa 4: Criar tarefa em segundo plano
Se o aplicativo registrar uma tarefa em segundo plano para notificações de impressão, ele deverá fornecer um manipulador para a ativação da tarefa em segundo plano. No exemplo de notificações de impressão e configurações de impressão , a PrintBackgroundTask classe manipula as notificações de impressão.
Se o status da impressora não exigir intervenção imediata do usuário, atualize um bloco em vez de mostrar um sistema. Por exemplo, para uma condição de tinta baixa, uma atualização de bloco é suficiente. Mas se a impressora estiver sem tinta, o aplicativo poderá mostrar uma notificação do sistema.
Salvando detalhes da notificação
A tarefa em segundo plano não pode iniciar o aplicativo em primeiro plano diretamente, somente o usuário pode: em um bloco, no sistema ou em iniciar. Portanto, para garantir que o aplicativo em primeiro plano possa acessar os detalhes da notificação de impressão, a tarefa em segundo plano os salva no armazenamento local. Para obter mais informações sobre como usar o armazenamento local, consulte Início Rápido: dados do aplicativo local.
Quando uma notificação de impressão é disparada, o Windows executa a tarefa em segundo plano chamando seu Run método. Os dados de notificação são passados para a tarefa em segundo plano por meio de um parâmetro de método que deve ser convertido no tipo Windows.Devices.Printers.Extensions.PrintNotificationEventDetails. A PrinterName e EventData as propriedades desse objeto carregam o nome da impressora e a mensagem Bidi, respectivamente.
This example shows the background task's Run method, in the PrintBackgroundTask.cs file, where the print notification details are saved to app settings before the toast, tile, and badge methods are called.
public void Run(Windows.ApplicationModel.Background.IBackgroundTaskInstance taskInstance)
{
// Save notification details to local storage
PrintNotificationEventDetails details = (PrintNotificationEventDetails)taskInstance.TriggerDetails;
settings.Values[keyPrinterName] = details.PrinterName;
settings.Values[keyAsyncUIXML] = details.EventData;
// Demonstrate possible actions
ShowToast(details.PrinterName, details.EventData);
UpdateTile(details.PrinterName, details.EventData);
UpdateBadge();
}
Atualizando um bloco
Quando os detalhes da notificação de impressão são enviados para o UpdateTile método, a tarefa em segundo plano da amostra demonstra como exibi-los em um bloco. Para obter mais informações sobre blocos, consulte a visão geral da notificação de bloco e bloco.
This example shows the background task's UpdateTile method, in the PrintBackgroundTask.cs file.
void UpdateTile(string printerName, string bidiMessage)
{
TileUpdater tileUpdater = TileUpdateManager.CreateTileUpdaterForApplication();
tileUpdater.Clear();
XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text09);
XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text");
tileTextAttributes[0].InnerText = printerName;
tileTextAttributes[1].InnerText = bidiMessage;
TileNotification tileNotification = new TileNotification(tileXml);
tileNotification.Tag = "tag01";
tileUpdater.Update(tileNotification);
}
Atualizando um selo
O UpdateBadge método mostra como usar a classe BadgeNotification para atualizar um selo. For more information about tiles, see Badge overview.
This example shows the background task's UpdateBadge method, in the PrintBackgroundTask.cs file.
void UpdateBadge()
{
XmlDocument badgeXml = BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeGlyph);
XmlElement badgeElement = (XmlElement)badgeXml.SelectSingleNode("/badge");
badgeElement.SetAttribute("value", "error");
var badgeNotification = new BadgeNotification(badgeXml);
BadgeUpdateManager.CreateBadgeUpdaterForApplication().Update(badgeNotification);
}
Criando um brinde
Uma notificação do sistema é uma mensagem transitória para o usuário que contém informações relevantes e sensíveis ao tempo e fornece acesso rápido ao conteúdo relacionado em um aplicativo. As notificações do Sistema devem ser exibidas aos usuários como um convite para retornar ao seu aplicativo para acompanhar algo de interesse. Para obter mais informações, consulte a visão geral da notificação do Toast.
Para habilitar as notificações do sistema, o aplicativo precisa registrar que ele é compatível com o sistema no manifesto do pacote do aplicativo.
VisualElements No elemento, defina o ToastCapable atributo como true.
Important
Não recomendamos sempre mostrar um brinde, especialmente para eventos não sancionáveis. Isso pode se tornar irritante para os usuários e fazer com que eles desativem todos os brindes de um aplicativo. Para eventos que não exigem a atenção imediata do usuário, recomendamos atualizar apenas o bloco e o selo e não mostrar um sistema.
This example shows the ToastCapable attribute in the VisualElements element, as it appears in the app package manifest file, Package.appxmanifest.
<VisualElements DisplayName="Device App For Printers C# sample" Logo="Assets\squareTile-sdk.png"
SmallLogo="Assets\smallTile-sdk.png" Description="DeviceAppForPrinters C# sample"
ForegroundText="light" BackgroundColor="#00b2f0" ToastCapable="true">
<DefaultTile ShowName="allLogos" ShortName="App4PrinterCS" WideLogo="Assets\tile-sdk.png" />
<SplashScreen Image="Assets\splash-sdk.png" BackgroundColor="#00b2f0" />
</VisualElements>
This example is from the ShowToast method of the PrintBackgroundTask.cs file. Ele mostra como criar um sistema com base em duas cadeias de caracteres, nomeadas title e body.
void ShowToast(string title, string body)
{
//
// Get Toast template
//
XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02);
//
// Pass to app as eventArgs.detail.arguments
//
((XmlElement)toastXml.SelectSingleNode("/toast")).SetAttribute("launch", title);
//
// The ToastText02 template has 2 text nodes (a header and a body)
// Assign title to the first one, and body to the second one
//
XmlNodeList textList = toastXml.GetElementsByTagName("text");
textList[0].AppendChild(toastXml.CreateTextNode(title));
textList[1].AppendChild(toastXml.CreateTextNode(body));
//
// Show the Toast
//
ToastNotification toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);
}
Etapa 5: Manipular a ativação
Depois que uma notificação de impressão dispara a tarefa em segundo plano, o aplicativo pode ser iniciado tocando em uma notificação do sistema ou em um bloco. Se o aplicativo for ativado de qualquer um, um parâmetro será passado para o aplicativo por meio LaunchActivatedEventArgs.arguments da propriedade. For more information about activation and the Microsoft Store app lifecycle, see Application lifecycle.
Para determinar se o aplicativo foi ativado em um desses casos, lide com o OnLaunched evento e examine os argumentos de evento que são passados para o manipulador de eventos. Se os argumentos de evento forem nulos, o aplicativo será ativado pelo usuário desde o início. Se os argumentos do evento não forem nulos, o aplicativo será iniciado a partir de um sistema ou bloco.
This example is from the OnLaunched method of the App.xaml.cs file. Ele mostra como lidar com a ativação do sistema ou blocos.
protected override async void OnLaunched(LaunchActivatedEventArgs args)
{
Frame rootFrame = Window.Current.Content as Frame;
// Do not repeat app initialization when the Window already has content,
// just ensure that the window is active
if (rootFrame == null)
{
// Create a Frame to act as the navigation context and navigate to the first page
rootFrame = new Frame();
// Associate the frame with a SuspensionManager key
SuspensionManager.RegisterFrame(rootFrame, "AppFrame");
if (args.PreviousExecutionState == ApplicationExecutionState.Terminated)
{
// Restore the saved session state only when appropriate
try
{
await SuspensionManager.RestoreAsync();
}
catch (SuspensionManagerException)
{
//Something went wrong restoring state.
//Assume there is no state and continue
}
}
// Place the frame in the current Window
Window.Current.Content = rootFrame;
}
if (rootFrame.Content == null || !String.IsNullOrEmpty(args.Arguments))
{
// When the navigation stack isn't restored or there are launch arguments
// indicating an alternate launch (e.g.: via toast or secondary tile),
// navigate to the appropriate page, configuring the new page by passing required
// information as a navigation parameter
if (!rootFrame.Navigate(typeof(MainPage), args.Arguments))
{
throw new Exception("Failed to create initial page");
}
}
// Ensure the current window is active
Window.Current.Activate();
}
Etapa 6: Detalhes da notificação do Access
Como a tarefa em segundo plano não pode iniciar diretamente o aplicativo em primeiro plano, os detalhes da notificação de impressão precisam ser salvos nas configurações do aplicativo para que o aplicativo em primeiro plano possa acessá-los. Para obter mais informações sobre como usar o armazenamento local, consulte Início Rápido: dados do aplicativo local.
Este exemplo mostra como o nome da impressora e a mensagem Bidi são recuperados das configurações do aplicativo nas configurações de Impressão e no exemplo de notificações de impressão . The code is from the DisplayBackgroundTaskTriggerDetails method of the InkLevel.xaml.cs file. The key index values, keyPrinterName, and keyAsyncUIXML, are the same string constants that are used in the background task, PrintBackgroundTask.cs.
void DisplayBackgroundTaskTriggerDetails()
{
String outputText = "\r\n";
try
{
string printerName = settings.Values[keyPrinterName].ToString();
outputText += ("Printer name from background task triggerDetails: " + printerName);
}
catch (Exception)
{
outputText += ("No printer name retrieved from background task triggerDetails ");
}
outputText += "\r\n";
try
{
string asyncUIXML = settings.Values[keyAsyncUIXML].ToString();
outputText += ("AsyncUI xml from background task triggerDetails: " + asyncUIXML);
}
catch (Exception)
{
outputText += ("No asyncUI xml retrieved from background task triggerDetails ");
}
ToastOutput.Text += outputText;
}
Testing
Antes de testar seu aplicativo de dispositivo UWP, ele deve estar vinculado à sua impressora usando metadados do dispositivo.
Você precisa de uma cópia do pacote de metadados do dispositivo para sua impressora, para adicionar as informações do aplicativo de dispositivo a ele. Se você não tiver metadados de dispositivo, poderá criá-lo usando o Assistente de Criação de Metadados do Dispositivo , conforme descrito no artigo Criar metadados de dispositivo para seu aplicativo de dispositivo UWP.
Para usar o Assistente de Criação de Metadados do Dispositivo, você deve instalar o Microsoft Visual Studio Professional, o Microsoft Visual Studio Ultimate ou o SDK autônomo para Windows 8.1, antes de concluir as etapas neste artigo. A instalação do Microsoft Visual Studio Express para Windows instala uma versão do SDK que não inclui o assistente.
As etapas a seguir criam seu aplicativo e instalam os metadados do dispositivo.
Habilite a assinatura de teste.
Inicie o Assistente de Criação de Metadados do Dispositivo%ProgramFiles(x86)%\Windows Kits\8.1\bin\x86 clicando duas vezes DeviceMetadataWizard.exe
From the Tools menu, select Enable Test Signing.
Reinicializar o computador
Crie a solução abrindo o arquivo de solução (.sln). Pressione F7 ou vá para a Solução Build-Build> no menu superior depois que o exemplo for carregado.
Desconecte e desinstale a impressora. Essa etapa é necessária para que o Windows leia os metadados do dispositivo atualizados na próxima vez que o dispositivo for detectado.
Editar e salvar metadados do dispositivo. Para vincular o aplicativo de dispositivo ao seu dispositivo, você deve associar o aplicativo de dispositivo ao seu dispositivo.
Se os metadados do dispositivo ainda não forem criados, consulte Criar metadados de dispositivo para seu aplicativo de dispositivo UWP.
Se o Assistente de Criação de Metadados do Dispositivo ainda não estiver aberto, inicie-o de %ProgramFiles(x86)%\Windows Kits\8.1\bin\x86, clicando duas vezes emDeviceMetadataWizard.exe.
Selecione Editar Metadados do Dispositivo. Essa opção permite editar o pacote de metadados do dispositivo existente.
In the Open dialog box, locate the device metadata package associated with your UWP device app. (It has a devicemetadata-ms file extension.)
Na página Especificar informações do aplicativo de dispositivo UWP , insira as informações do aplicativo da Microsoft Store na caixa de aplicativo do dispositivo UWP . Selecione Importar arquivo de manifesto do aplicativo UWP para inserir automaticamente o nome do pacote, o nome do Publicador e a ID do aplicativo UWP.
If your app is registering for printer notifications, fill out the Notification handlers box. In Event ID, enter the name of the print event handler. In Event Asset, enter the name of the file where that code resides.
When you're done, select Next until you get to the Finish page.
Na página Revisar o pacote de metadados do dispositivo , verifique se todas as configurações estão corretas e selecione Copiar o pacote de metadados do dispositivo para o repositório de metadados na caixa de seleção do computador local . Then select Save.
Reconecte sua impressora para que o Windows leia os metadados do dispositivo atualizados quando o dispositivo estiver conectado.
Troubleshooting
Problema: nenhuma notificação do sistema padrão é exibida
Se nenhuma notificação de impressão padrão for exibida quando esperado...
Possible cause: Test signing isn't turned on. Consulte a seção Depuração neste artigo para obter informações sobre como ativá-la.
Possible cause: Toast notifications are disabled by domain policies. Deixe o domínio e tente novamente.
Possible cause: The printer hasn't implemented DriverEvents. Verifique se o driver v4 dá suporte a Bidi e DriverEvents. Para obter mais informações, consulte Suporte ao driver para interface do usuário personalizada.
Possible cause: The machine has no recent job in the printer queue. Verifique se o ícone da impressora é mostrado no canto inferior direito da tela. Caso contrário, envie outro trabalho de impressão.
Possible cause: Your entry point for the background task (
IBackgroundTask) is within the same project as your foreground app. Esse cenário não é permitido. Separe uma classe totalmente nova para o manipulador de tarefas em segundo plano.Possible cause: The class that is the entry point for notifications in your app is incorrectly given in your manifest or device metadata, causing the app to crash within the background host and not showing any toast. Verifique os seguintes problemas:
Make sure the entry point is given correctly in the Declarations tab of the Manifest Designer. Ele deve estar na forma de Namespace.ClassName para C# e C++. Para JavaScript, deve ser o caminho de diretório relativo para o arquivo .js.
Um aplicativo JavaScript deve chamar close() após sua conclusão.
A classe C# precisa implementar Windows.ApplicationModel.Background.IBackgroundTask e precisa ter um método public void
Run(Windows.ApplicationModel.Background.IBackgroundTaskInstance taskInstance).A classe C++ precisa implementar Windows::ApplicationModel::Background::IBackgroundTask e precisa ter um
virtual void Run(Windows::ApplicationModel::Background::IBackgroundTaskInstance^ taskInstance)método.
Related articles
- Visão geral do selo (aplicativos UWP)
- Visão geral da notificação de bloco e bloco (aplicativos UWP)
- Diretrizes e lista de verificação para blocos e selos (aplicativos UWP)
- Visão geral da notificação do sistema (aplicativos UWP)
- Diretrizes e lista de verificação para notificações do sistema (aplicativos UWP)
- Suporte de driver para interface do usuário personalizada
- Desenvolvendo drivers de impressão v4
- Interfaces de Extensão de Impressora (Driver de Impressão v4)
- Bidirectional Communications
- Introdução aos aplicativos UWP
- Criar um aplicativo de dispositivo UWP (guia passo a passo)
- Criar metadados de dispositivo para um aplicativo de dispositivo UWP (guia passo a passo)