Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Översikt
I denna tutorial lägger du till push-meddelanden i Windows snabbstartsprojekt så att ett push-meddelande skickas till enheten varje gång en post infogas.
Om du inte använder det nedladdade snabbstartsserverprojektet behöver du paketet med push-meddelandetillägget. Mer information finns i Arbeta med .NET-backendserver-SDK för Azure Mobile Apps.
Konfigurera en meddelandehubb
Funktionen Mobile Apps i Azure App Service använder Azure Notification Hubs för att skicka push-meddelanden, så du konfigurerar en meddelandehubb för din mobilapp.
- I Azure-portalengår du till App Servicesoch väljer sedan appens serverdel. Under Inställningarväljer du Push. 
- Om du vill lägga till en meddelandehubbresurs i appen väljer du Anslut. Du kan antingen skapa en hubb eller ansluta till en befintlig.   
Nu har du anslutit en meddelandehubb till ditt Mobile Apps-backend-projekt. Senare konfigurerar du den här meddelandehubben för att ansluta till ett plattformsmeddelandesystem (PNS) för att skicka till enheter.
Registrera din app för push-meddelanden
Du måste skicka din app till Microsoft Store och sedan konfigurera serverprojektet så att det integreras med Windows Push Notification Services (WNS) för att skicka push-överföring.
- I Visual Studio Solution Explorer högerklickar du på UWP-appprojektet, klickar på Store>Associera app med Store....   
- I guiden klickar du på Nästa, loggar in med ditt Microsoft-konto, skriver ett namn för din app i Reservera ett nytt appnamn och klickar sedan på Reservera. 
- När appregistreringen har skapats väljer du det nya appnamnet, klickar på Nästa och klickar sedan på Associera. Detta lägger till nödvändig registreringsinformation för Microsoft Store i programmanifestet. 
- Gå till programregistreringsportalen och logga in med ditt Microsoft-konto. Klicka på den Windows Store-app som du associerade i föregående steg. 
- På registreringssidan antecknar du värdet under Programhemligheter och paket-SID, som du kommer att använda för att konfigurera mobilappens serverdel.   - Viktigt! - Klienthemligheten och paket-SID är viktiga säkerhetsautentiseringsuppgifter. Dela inte dessa värden med någon och distribuera dem inte med din app. Program-ID:t används med hemligheten för att konfigurera Microsoft-kontoautentisering. 
App Center har också instruktioner för att konfigurera UWP-appar för push-meddelanden.
Konfigurera serverdelen för att skicka push-meddelanden
- I Azure-portalenväljer du Bläddra bland alla>App Services. Välj sedan din Mobile Apps-serverdel. Under Inställningarväljer du App Service Push. Välj sedan namnet på meddelandehubben. 
- Gå till Windows (WNS). Ange sedan säkerhetsnyckeln (klienthemlighet) och paket-SID som du hämtade från Live Services-webbplatsen. Välj sedan Spara.   
Serverdelen är nu konfigurerad att använda WNS för att skicka push-meddelanden.
Uppdatera servern för att skicka push-meddelanden
Använd proceduren nedan som matchar din typ av serverdelsprojekt – antingen .NET-serverdel eller Node.js serverdel.
.NET-serverdels-projekt
- Högerklicka på serverprojektet i Visual Studio och klicka på Hantera NuGet-paket, sök efter Microsoft.Azure.NotificationHubs och klicka sedan på Installera. Detta installerar Notification Hubs-klientbiblioteket. 
- Expandera Kontrollanter, öppna TodoItemController.cs och lägg till följande med hjälp av -instruktioner: - using System.Collections.Generic; using Microsoft.Azure.NotificationHubs; using Microsoft.Azure.Mobile.Server.Config;
- I metoden PostTodoItem lägger du till följande kod efter anropet till InsertAsync: - // Get the settings for the server project. HttpConfiguration config = this.Configuration; MobileAppSettingsDictionary settings = this.Configuration.GetMobileAppSettingsProvider().GetMobileAppSettings(); // Get the Notification Hubs credentials for the Mobile App. string notificationHubName = settings.NotificationHubName; string notificationHubConnection = settings .Connections[MobileAppSettingsKeys.NotificationHubConnectionString].ConnectionString; // Create the notification hub client. NotificationHubClient hub = NotificationHubClient .CreateClientFromConnectionString(notificationHubConnection, notificationHubName); // Define a WNS payload var windowsToastPayload = @"<toast><visual><binding template=""ToastText01""><text id=""1"">" + item.Text + @"</text></binding></visual></toast>"; try { // Send the push notification. var result = await hub.SendWindowsNativeNotificationAsync(windowsToastPayload); // Write the success result to the logs. config.Services.GetTraceWriter().Info(result.State.ToString()); } catch (System.Exception ex) { // Write the failure result to the logs. config.Services.GetTraceWriter() .Error(ex.Message, null, "Push.SendAsync Error"); }- Den här koden instruerar meddelandehubben att skicka ett push-meddelande när ett nytt objekt har infogats. 
- Återpublicera serverprojektet. 
Node.js serverdelsprojekt
- Konfigurera ditt backend-projekt. 
- Ersätt den befintliga koden i filen todoitem.js med följande: - var azureMobileApps = require('azure-mobile-apps'), promises = require('azure-mobile-apps/src/utilities/promises'), logger = require('azure-mobile-apps/src/logger'); var table = azureMobileApps.table(); table.insert(function (context) { // For more information about the Notification Hubs JavaScript SDK, // see https://aka.ms/nodejshubs logger.info('Running TodoItem.insert'); // Define the WNS payload that contains the new item Text. var payload = "<toast><visual><binding template=\ToastText01\><text id=\"1\">" + context.item.text + "</text></binding></visual></toast>"; // Execute the insert. The insert returns the results as a Promise, // Do the push as a post-execute action within the promise flow. return context.execute() .then(function (results) { // Only do the push if configured if (context.push) { // Send a WNS native toast notification. context.push.wns.sendToast(null, payload, function (error) { if (error) { logger.error('Error while sending push notification: ', error); } else { logger.info('Push notification sent successfully!'); } }); } // Don't forget to return the results from the context.execute() return results; }) .catch(function (error) { logger.error('Error while running context.execute: ', error); }); }); module.exports = table;- Detta skickar ett WNS-popup-meddelande som innehåller item.text när ett nytt att göra-objekt infogas. 
- När du redigerar filen på den lokala datorn publicerar du serverprojektet igen. 
Lägga till push-meddelanden i din app
Därefter måste din app registrera sig för push-meddelanden vid start. När du redan har aktiverat autentisering kontrollerar du att användaren loggar in innan du försöker registrera dig för push-meddelanden.
- Öppna App.xaml.cs-projektfilen och lägg till följande - usinginstruktioner:- using System.Threading.Tasks; using Windows.Networking.PushNotifications;
- I samma fil lägger du till följande InitNotificationsAsync-metoddefinition i appklassen : - private async Task InitNotificationsAsync() { // Get a channel URI from WNS. var channel = await PushNotificationChannelManager .CreatePushNotificationChannelForApplicationAsync(); // Register the channel URI with Notification Hubs. await App.MobileService.GetPush().RegisterAsync(channel.Uri); }- Den här koden hämtar ChannelURI för appen från WNS och registrerar sedan ChannelURI med din App Service Mobile App. 
- Överst i händelsehanteraren OnLaunched i App.xaml.cs lägger du till asynkron modifieraren i metoddefinitionen och lägger till följande anrop till den nya Metoden InitNotificationsAsync , som i följande exempel: - protected async override void OnLaunched(LaunchActivatedEventArgs e) { await InitNotificationsAsync(); // ... }- Detta garanterar att den kortlivade ChannelURI:n registreras varje gång programmet startas. 
- Återskapa ditt UWP-appprojekt. Din app är nu redo att ta emot toast-meddelanden. 
Testa push-meddelanden i din app
- Högerklicka på Windows Store-projektet, klicka på Ange som startprojekt och tryck sedan på F5-tangenten för att köra Windows Store-appen. - När appen har startats registreras enheten för push-meddelanden. 
- Stoppa Windows Store-appen och upprepa föregående steg för Windows Phone Store-appen. - Nu är båda enheterna registrerade för att ta emot push-meddelanden. 
- Kör Windows Store-appen igen och skriv text i Infoga en TodoItem och klicka sedan på Spara. - Observera att när infogningen har slutförts får både Windows Store- och Windows Phone-apparna ett push-meddelande från WNS. Meddelandet visas på Windows Phone även när appen inte körs.  
Nästa steg
Läs mer om push-meddelanden:
- Så här använder du den hanterade klienten för Azure Mobile Apps Mallar ger dig flexibilitet att skicka plattformsoberoende push-meddelanden och lokaliserade push-meddelanden. Lär dig hur du registrerar mallar.
- Diagnostisera problem med push-meddelanden Det finns olika orsaker till varför meddelanden kan tas bort eller inte hamnar på enheter. Det här avsnittet visar hur du analyserar och tar reda på rotorsaken till push-meddelandefel.
Kolla in någon av följande handledningar:
- Lägga till autentisering i din app Lär dig hur du autentiserar användare av din app med en identitetsprovider.
- Aktivera offlinesynkronisering för din app Lär dig hur du lägger till offlinestöd för din app med hjälp av en mobilappsserverdel. Med offlinesynkronisering kan slutanvändarna interagera med en mobilapp – visa, lägga till eller ändra data – även om det inte finns någon nätverksanslutning.