Öğretici: Azure Notification Hubs kullanarak Evrensel Windows Platformu uygulamalara bildirim gönderme
Bu öğreticide, bir Evrensel Windows Platformu (UWP) uygulamasına anında iletme bildirimleri göndermek için bir bildirim hub’ı oluşturursunuz. Windows Anında Bildirim Hizmeti’ni (WNS) kullanarak anında iletme bildirimleri alan boş bir Windows Mağazası uygulaması oluşturursunuz. Ardından, uygulamanızı çalıştıran tüm cihazlara anında iletme bildirimleri yayınlamak için bildirim hub'ınızı kullanırsınız.
Not
Bu öğreticinin tamamlanan kodunu GitHub'da bulabilirsiniz.
Aşağıdaki adımları uygulayın:
- Windows Mağazası’nda bir uygulama oluşturma
- Bildirim hub’ı oluşturma
- Örnek bir Windows uygulaması oluşturma
- Test bildirimleri gönderme
Önkoşullar
- Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir Azure hesabı oluşturun.
- Microsoft Visual Studio 2017 veya üzeri. Bu öğreticideki örnekte Visual Studio 2019 kullanılır.
- UWP uygulama geliştirme araçlarının yüklü olması
- Etkin bir Windows Mağazası hesabı
- Uygulamalardan ve diğer gönderenlerden bildirim al ayarının etkinleştirildiğini onaylayın.
- Bilgisayarınızda Ayarlar penceresini başlatın.
- Sistem kutucuğunu seçin.
- Soldaki menüden Bildirimler ve eylemler'i seçin.
- Uygulamalardan ve diğer gönderenlerden bildirim al ayarının etkinleştirildiğini onaylayın. Etkinleştirilmemişse etkinleştirin.
Bu öğreticiyi tamamlamak UWP uygulamalarına ilişkin diğer tüm Notification Hubs öğreticileri için önkoşuldur.
Windows Mağazası’nda bir uygulama oluşturma
Not
Microsoft Anında İletilen Bildirim Hizmeti (MPNS) kullanım dışı bırakıldı ve artık desteklenmiyor.
UWP uygulamalarına anında iletme bildirimleri göndermek için uygulamanızı Windows Mağazası ile ilişkilendirin. Daha sonra, WNS ile tümleştirmek için bildirim hub'ınızı yapılandırın.
Windows Geliştirme Merkezi’ne gidin, Microsoft hesabınızla oturum açın ve ardından Yeni uygulama oluştur’u seçin.
Uygulamanız için bir ad yazın ve ardından Ürün adını ayır’ı seçin. Bunu yaptığınızda uygulamanız için yeni bir Windows Mağazası kaydı oluşturulur.
Ürün yönetimi'ne genişletin ve ardından Ürün Kimliği'ne tıklayın. Paket SID'sini, Paket/Kimlik/Ad, Paket/Kimlik/Yayımcı ve Paket/Özellikler/PublisherDisplayName değerlerini not alın.
Ürün yönetimi'nin altında WNS/MPNS'yi ve ardından Uygulama Kaydı portalı'ni seçin. Microsoft hesabınızda oturum açın. Uygulama kayıt sayfası yeni bir sekmede açılır.
Temel Bilgiler'in altında İstemci kimlik bilgileri: Sertifika veya gizli dizi ekle'yi seçin.
Sertifikalar ve gizli diziler sayfasındaki İstemci gizli dizileri'nin altında Yeni istemci gizli dizisi'ni seçin. Bir istemci gizli dizisi (uygulama gizli dizisi olarak da adlandırılır) oluşturduktan sonra, sayfadan çıkmadan önce bu gizli diziyi not alın.
Uyarı
İstemci gizli dizisi (uygulama gizli dizisi) değerlerini yalnızca oluşturduktan hemen sonra görüntüleyebilirsiniz. Sayfadan çıkmadan önce gizli diziyi kaydettiğinizden emin olun.
Uyarı
Uygulama gizli anahtarı ve paket SID'si önemli güvenlik kimlik bilgileridir. Bu değerleri kimseyle paylaşmayın veya uygulamanızla birlikte dağıtmayın.
Bildirim Hub'ı oluşturma
Azure Portal’ında oturum açın.
Soldaki menüden Tüm hizmetler'i seçin.
Hizmetleri filtrele metin kutusuna Notification Hubs yazın. Hizmeti soldaki menüden SıK KULLANıLANLAR bölümüne eklemek için hizmet adının yanındaki yıldız simgesini seçin. Notification Hubs'ı seçin.
Notification Hubs sayfasında araç çubuğunda Oluştur'u seçin.
Bildirim Hub'ı sayfasındaki Temel Bilgiler sekmesinde aşağıdaki adımları uygulayın:
Abonelik'te, kullanmak istediğiniz Azure aboneliğinin adını seçin ve ardından mevcut bir kaynak grubunu seçin veya yeni bir kaynak grubu oluşturun.
Ad Alanı Ayrıntıları'nda yeni ad alanı için benzersiz bir ad girin.
Ad alanı bir veya daha fazla bildirim hub'ı içerdiğinden, Bildirim Hub'ı Ayrıntıları'na hub için bir ad yazın.
Konum açılan liste kutusundan bir değer seçin. Bu değer, hub'ı oluşturmak istediğiniz konumu belirtir.
Kullanılabilirlik Alanları seçeneğini gözden geçirin. Kullanılabilirlik alanları olan bir bölge seçtiyseniz, onay kutusu varsayılan olarak seçilidir. Kullanılabilirlik Alanları ücretli bir özellik olduğundan katmanınıza ek ücret eklenir.
Olağanüstü durum kurtarma seçeneğini belirleyin: Yok, Eşleştirilmiş kurtarma bölgesi veya Esnek kurtarma bölgesi. Eşleştirilmiş kurtarma bölgesi'ni seçerseniz yük devretme bölgesi görüntülenir. Esnek kurtarma bölgesi'ni seçerseniz, kurtarma bölgeleri listesinden seçim yapmak için açılan listeyi kullanın.
Oluştur'u belirleyin.
Dağıtım tamamlandığında Kaynağa git'i seçin.
Hub için WNS ayarlarını yapılandırma
BİlDİrİm AYARLARI kategorisinde Windows (WNS) öğesini seçin.
Önceki bölümde not aldığınız Paket SID'sinin (bu "ms-app://
<Your Package SID>
" gibi) ve Güvenlik Anahtarı 'nın (Uygulama Gizli Anahtarı) değerlerini girin.Araç çubuğunda Kaydet seçeneğine tıklayın.
Bildirim hub'ınız WNS ile birlikte çalışacak şekilde yapılandırıldı. Uygulamanızı kaydetmek ve bildirim göndermek için gerekli bağlantı dizelerine sahipsiniz.
Örnek bir Windows uygulaması oluşturma
Visual Studio'da Dosya menüsünü açın, Yeni'yi ve ardından Proje'yi seçin.
Yeni proje oluştur iletişim kutusunda aşağıdaki adımları tamamlayın:
Üstteki arama kutusuna Windows Evrensel yazın.
Arama sonuçlarında Boş Uygulama (Evrensel Windows) öğesini ve ardından İleri'yi seçin.
Yeni projenizi yapılandırın iletişim kutusunda proje dosyaları için bir Proje adı ve Konum girin.
Oluştur'u belirleyin.
Hedef ve en düşük platform sürümleri için varsayılan değerleri kabul edin ve Tamam’ı seçin.
Çözüm Gezgini'da Windows Mağazası uygulama projesine sağ tıklayın, Yayımla'yı ve ardından Uygulamayı Mağaza ile ilişkilendir'i seçin. Uygulamanızı Windows Mağazası ile ilişkilendirin sihirbazı görüntülenir.
Sihirbazda Microsoft hesabınızla oturum açın.
2. adımda kaydettiğiniz uygulamayı seçin, İleri'yi ve ardından İlişkilendir'i seçin. Bunu yaptığınızda uygulama bildirimine gerekli Windows Mağazası kayıt bilgileri eklenir.
Visual Studio'da çözüme sağ tıklayın ve ardından NuGet Paketlerini Yönet'i seçin. NuGet Paketlerini Yönet penceresi açılır.
Arama kutusuna WindowsAzure.Messaging.Managed yazın, Yükle'yi seçin ve kullanım koşullarını kabul edin.
Bu eylem Microsoft.Azure.NotificationHubs NuGet paketini kullanarak Windows için Azure Notification Hubs kitaplığına bir başvuru indirir, yükler ve ekler.
App.xaml.cs
Proje dosyasını açın ve aşağıdaki deyimleri ekleyin:using Windows.Networking.PushNotifications; using Microsoft.WindowsAzure.Messaging; using Windows.UI.Popups;
Projenin
App.xaml.cs
dosyasında sınıfınıApp
bulun ve aşağıdakiInitNotificationsAsync
yöntem tanımını ekleyin. değerini<your hub name>
Azure portalında oluşturduğunuz bildirim hub'ının adıylaDefaultListenSharedAccessSignature
değiştirin ve<Your DefaultListenSharedAccessSignature connection string>
yerine bildirim hub'ınızın Erişim İlkeleri sayfasındaki bağlantı dizesi yazın:private async void InitNotificationsAsync() { var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync(); var hub = new NotificationHub("<your hub name>", "<Your DefaultListenSharedAccessSignature connection string>"); var result = await hub.RegisterNativeAsync(channel.Uri); // Displays the registration ID so you know it was successful if (result.RegistrationId != null) { var dialog = new MessageDialog("Registration successful: " + result.RegistrationId); dialog.Commands.Add(new UICommand("OK")); await dialog.ShowAsync(); } }
Bu kod, WNS'den uygulamanın kanal URI'sini alır ve ardından bu kanal URI'sini bildirim hub'ınıza kaydeder.
Not
Yer tutucuyu
hub name
Azure portalında görünen bildirim hub'ının adıyla değiştirin. Ayrıca, bağlantı dizesi yer tutucuyuDefaultListenSharedAccessSignature
önceki bir bölümde bildirim hub'ınızın Erişim İlkeleri sayfasından aldığınız bağlantı dizesi ile değiştirin.içindeki
App.xaml.cs
olay işleyicisininOnLaunched
en üstüne yeniInitNotificationsAsync
yönteme aşağıdaki çağrıyı ekleyin:InitNotificationsAsync();
Bu eylem, uygulama her başlatıldığında kanal URI'sinin bildirim hub'ınıza kaydedilmesini garanti eder.
Sağ tıklayın
Package.appxmanifest
ve Kodu Görüntüle (F7)'yi seçin. Ad değerini bulup<Identity .../>
Paket/Kimlik/Ad ile değiştirin ve Publisher değerini daha önce oluşturduğunuz uygulamadaki Paket/Kimlik/Yayımcı değeriyle değiştirin.Uygulamayı çalıştırmak için klavyenin F5 tuşuna basın. Kayıt anahtarını içeren bir iletişim kutusu görüntülenir. İletişim kutusunu kapatmak için Tamam'a tıklayın.
Uygulamanız şimdi bildirim almaya hazırdır.
Test bildirimleri gönderme
Azure portalından bildirim göndererek uygulamanızda bildirim alma testi gerçekleştirebilirsiniz.
Azure portalında, Genel Bakış sekmesine geçin ve araç çubuğunda Test Gönderimi seçeneğini belirleyin.
Test Gönderimi penceresinde aşağıdaki eylemleri gerçekleştirin:
Platformlar için Windows’u seçin.
Bildirim Türü için Bildirim’i seçin.
Gönder'i seçin.
Pencerenin en altındaki Sonuç listesinde Gönderme işleminin sonucuna bakın. Bir uyarı iletisi de görürsünüz.
Şu bildirim iletisini görürsünüz: Masaüstünüzde test iletisi.
Sonraki adımlar
Portalı veya konsol uygulamasını kullanarak tüm Windows cihazlarınıza yayın bildirimleri gönderdiniz. Belirli cihazlara nasıl anında iletme bildirimleri gönderileceğini öğrenmek için aşağıdaki öğreticiye ilerleyin: