Öğretici: iOS uygulamanızı Azure Notification Hubs ile çalışacak şekilde ayarlama

Bu öğreticide, Azure Notification Hubs'ı ayarlama ve Apple Anında İletme Bildirimi hizmeti (APNS) aracılığıyla bir iOS cihazına anında iletme bildirimleri göndermek için kimlik bilgilerini yapılandırma adımları gösterilmektedir.

Bu öğreticiyi çalıştırmak, sonraki Objective C ve Swift iOS öğreticilerinin önkoşullarından biridir ve aşağıdaki adımları kapsar:

  • Sertifika imzalama isteği dosyasını oluşturun.
  • Uygulamanızdan anında iletme bildirimleri isteyin.
  • Uygulama için bir sağlama profili oluşturun.
  • Bildirim hub’ı oluşturma.
  • ApNS bilgileriyle bildirim hub'ını yapılandırın.

Önkoşullar

Bu öğreticiyi tamamlamak için etkin bir Azure hesabınızın olması gerekir. Hesabınız yoksa yalnızca birkaç dakika içinde ücretsiz bir deneme hesabı oluşturabilirsiniz. Ayrıntılar için bkz. Azure Ücretsiz Deneme.

Ayrıca aşağıdakilere de ihtiyacınız olacaktır:

  • Etkin bir Apple Geliştirici hesabı.
  • Anahtar zincirinize yüklenmiş geçerli bir geliştirici sertifikasının yanı sıra Xcode çalıştıran bir Mac.
  • iOS sürüm 10 veya üzerini çalıştıran bir i Telefon veya iPad.
  • Fiziksel cihazınız Apple Portal'a kaydedildi ve sertifikanızla ilişkilendirildi.

Hizmeti bilmiyorsanız Azure Notification Hubs'a genel bakış makalesini okuduğunuzdan emin olun.

Dekont

Bildirim hub'ı yalnızca Korumalı Alan kimlik doğrulama modunu kullanacak şekilde yapılandırılır. Üretim iş yükleri için bu kimlik doğrulama modunu kullanmamalısınız.

Sertifika imzalama isteği dosyasını oluşturma

Apple Anında İletilen Bildirim Servisi (APNS), anında iletme bildirimlerinizi doğrulamak için sertifikaları kullanır. Bildirim gönderip almak için gereken bildirim sertifikasını oluşturacak bu talimatları uygulayın. Bu kavramlarla ilgili daha fazla bilgi için resmi Apple Anında İletilen Bildirim Servisi belgelerine bakın.

Apple'ın imzalı bir anında iletme sertifikası oluşturmak için kullandığı Sertifika İmzalama İsteği (CSR) dosyasını oluşturun:

  1. Mac’inizde Anahtarlık Erişim aracını çalıştırın. Yardımcı Programlar klasöründen veya Başlatma Çubuğundaki Diğer klasöründen açılabilir.

  2. Anahtarlık Erişimi'ni seçin, Sertifika Yardımcısı'nı genişletin ve ardından Sertifika Yetkilisinden Sertifika İste'yi seçin.

    Screenshot that highlights the Request a Certificate from a Certificate Authority menu option.

    Dekont

    Varsayılan olarak, AnahtarLık Erişimi listedeki ilk öğeyi seçer. Sertifikalar kategorisindeyseniz ve Apple Worldwide Developer Relations Certification Authority listedeki ilk öğe değilse bu sorun olabilir. CSR(Sertifika İmzalama İsteği) oluşturmadan önce anahtar olmayan bir öğeye sahip olduğunuzdan veya Apple Worldwide Developer Relations Certification Authority anahtarının seçildiğinden emin olun.

  3. Kullanıcı E-posta Adresinizi seçin, Ortak Ad değerinizi girin, Diske kaydedildi'yi belirttiğinizden emin olun ve ardından Devam'ı seçin. Gerekli olmadığından CA E-posta Adresini boş bırakın.

    Required certificate information

  4. Farklı Kaydet'te CSR dosyası için bir ad girin, Konum'da konumu seçin ve ardından Kaydet'i seçin.

    Choose file name

    Bu eylem CSR dosyasını seçili konuma kaydeder. Varsayılan konum Masaüstü'dür. Bu dosya için seçilen konumu unutmayın.

Ardından, uygulamanızı Apple'a kaydedin, anında iletme bildirimlerini etkinleştirin ve anında iletme sertifikası oluşturmak için dışarı aktarılan CSR'yi karşıya yükleyin.

Anında iletme bildirimleri için uygulamanızı kaydetme

Bir iOS uygulamasına anında iletme bildirimleri göndermek için uygulamanızı Apple'a kaydedin ve anında iletme bildirimlerine kaydolun.

  1. Uygulamanızı henüz kaydolmadıysanız Apple Geliştirici Merkezi'ndeki iOS Sağlama Portalı'na göz atın. Apple kimliğinizle portalda oturum açın ve Tanımlayıcılar'ı seçin. Ardından yeni bir uygulama kaydetmek için öğesini seçin + .

    App IDs page

  2. Yeni Tanımlayıcı Kaydet ekranında Uygulama Kimlikleri radyo düğmesini seçin. Daha sonra Devam seçeneğini belirleyin.

    Register new ID page

  3. Yeni uygulamanız için aşağıdaki üç değeri güncelleştirin ve devam'ı seçin:

    • Açıklama: Uygulamanız için açıklayıcı bir ad yazın.

    • Paket Kimliği: Uygulama Dağıtım Kılavuzu'nda belirtildiği gibi Kuruluş Tanımlayıcısı.Ürün Adı formunun Paket Kimliğini girin. Kuruluş Tanımlayıcısı ve Ürün Adı değerleri, Xcode projenizi oluştururken kullandığınız kuruluş tanımlayıcısı ve ürün adıyla eşleşmelidir. Aşağıdaki ekran görüntüsünde NotificationHubs değeri kuruluş tanımlayıcısı olarak, GetStarted değeri ise ürün adı olarak kullanılır. Xcode'un doğru yayımlama profilini kullanması için Paket Tanımlayıcısı değerinin Xcode projenizdeki değerle eşleştiğinden emin olun.

      Register app ID

    • Anında İletme Bildirimleri: Özellikler bölümündeki Anında İletme Bildirimleri seçeneğini işaretleyin.

      Register new app ID

      Bu eylem Uygulama Kimliğinizi oluşturur ve bilgileri onaylamanızı talep eder. Yeni Uygulama Kimliğini onaylamak için Devam'ı ve ardından Kaydet'i seçin.

      Confirm new App ID

      Kaydet'i seçtikten sonra, yeni Uygulama Kimliğini Sertifikalar, Tanımlayıcılar ve Profiller sayfasında satır öğesi olarak görürsünüz.

  4. Sertifikalar, Tanımlayıcılar ve Profiller sayfasındaki Tanımlayıcılar'ın altında, yeni oluşturduğunuz Uygulama Kimliği satır öğesini bulun ve Uygulama Kimliği Yapılandırmanızı Düzenle ekranını görüntülemek için satırını seçin.

Notification Hubs için sertifika oluşturma

Dekont

iOS 13'ün yayımlanmasıyla birlikte, yalnızca belirteç tabanlı kimlik doğrulamasını kullanarak sessiz bildirimler alabilirsiniz. APNS kimlik bilgileriniz için sertifika tabanlı kimlik doğrulaması kullanıyorsanız belirteç tabanlı kimlik doğrulaması kullanmaya geçmeniz gerekir.

Bildirim hub'ını APNS ile çalışmasını sağlamak için bir sertifika gereklidir. Bu işlem iki yoldan biriyle yapılabilir:

  • Notification Hubs'a doğrudan yüklenebilecek bir .p12 dosyası oluşturun.

  • Belirteç tabanlı kimlik doğrulaması için kullanılabilecek bir .p8 dosyası oluşturun (daha yeni bir yaklaşım).

İkinci seçeneğin, APNS için Belirteç tabanlı (HTTP/2) kimlik doğrulamasında belirtildiği gibi sertifikaları kullanmaya kıyasla bir dizi avantajı vardır. Ancak her iki yaklaşım için de adımlar sağlanır.

1. Seçenek: Notification Hubs'a doğrudan yüklenebilen bir .p12 anında iletme sertifikası oluşturma

  1. Ekranı aşağı kaydırarak işaretli Anında İletme Bildirimleri seçeneğine gelin ve sertifikayı oluşturmak için Yapılandır'ı seçin.

    App ID

  2. Apple Anında İletme Bildirimi hizmeti SSL Sertifikaları penceresi görüntülenir. Geliştirme SSL Sertifikası bölümünde Sertifika Oluştur düğmesini seçin.

    Create certificate

    Yeni sertifika oluştur ekranı görüntülenir.

    Dekont

    Bu öğretici geliştirme sertifikası kullanır. Aynı işlem üretim sertifika kaydedildiğinde de kullanılır. Bildirim gönderirken aynı sertifika türünü kullandığınızdan emin olun.

  3. Dosya Seç'i seçin, CSR dosyasını ilk görevden kaydettiğiniz konuma gidin ve ardından sertifika adına çift tıklayarak yükleyin. Daha sonra Devam seçeneğini belirleyin.

  4. Portal sertifikayı oluşturduğunda İndir düğmesini seçin. Sertifikayı kaydedin ve kaydedildiği konumu unutmayın.

    Download certificate

    Sertifika indirilir ve İndirilenler klasörünüze kaydedilir.

    Locate certificate file

    Varsayılan olarak, indirilen geliştirme sertifikası aps_development.cer olarak adlandırılır.

  5. İndirilen aps_development.cer bildirim sertifikasına çift tıklayın. Bu eylem yeni sertifikayı Anahtar Zinciri’ne aşağıdaki resimde gösterildiği gibi yüklenir:

    Keychain access

    Sertifikanızdaki ad farklı olsa da, adın önüne Apple Development iOS Anında İletme Hizmetleri eklenecektir.

  6. Anahtar Zinciri Erişimi’nde Sertifikalar kategorisinde oluşturduğunuz yeni bildirim sertifikasına sağ tıklayın. Dışarı Aktar'ı seçin, dosyayı adlandırın, .p12 biçimini ve ardından Kaydet'i seçin.

    Export certificate

    Sertifikayı parolayla korumayı seçebilirsiniz, ancak bu isteğe bağlıdır. Parola oluşturmayı atlamak istiyorsanız Tamam'a tıklayın. Dışarı aktarılan .p12 sertifikanın dosya adını ve konumunu not edin. Bunlar APNS ile kimlik doğrulamasını etkinleştirmek için kullanılır.

    Dekont

    .p12 dosya adınız ve konumunuz bu öğreticide görüntülenenden farklı olabilir.

2. Seçenek: Belirteç tabanlı kimlik doğrulaması için kullanılabilecek bir .p8 sertifikası oluşturma

  1. Aşağıdaki ayrıntıları not edin:

    • Uygulama Kimliği Ön Eki (bu bir Ekip Kimliğidir)
    • Paket Kimliği
  2. Sertifikalar, Tanımlayıcılar ve Profiller'e dönüp Anahtarlar'a tıklayın. APNS için yapılandırılmış bir anahtarınız varsa, indirdiğiniz .p8 sertifikasını oluşturulduktan hemen sonra yeniden kullanabilirsiniz. Bu durumda, 3 ile 5 arasında adımları yoksayabilirsiniz.

  3. + Yeni bir anahtar oluşturmak için düğmeye (veya Anahtar oluştur düğmesine) tıklayın.

  4. Uygun bir Anahtar Adı değeri sağlayın, Apple Anında İletme Bildirimleri hizmeti (APNS) seçeneğini işaretleyin ve ardından Devam'a ve ardından sonraki ekranda Kaydet'e tıklayın.

  5. İndir'e tıklayın ve .p8 dosyasını (ön ekliAuthKey_) güvenli bir yerel dizine taşıyın, ardından Bitti'ye tıklayın.

    Önemli

    .p8 dosyanızı güvenli bir yerde tuttuğunuzdan emin olun (ve yedek kaydedin). Anahtarınızı indirdikten sonra yeniden indirilemez; sunucu kopyası kaldırılır.

  6. Anahtarlar'da, yeni oluşturduğunuz anahtara (veya bunun yerine kullanmayı seçtiyseniz mevcut bir anahtara) tıklayın.

  7. Anahtar Kimliği değerini not edin.

  8. .p8 sertifikanızı Visual Studio Code gibi seçtiğiniz uygun bir uygulamada açın ve anahtar değerini not edin. Bu, -----BEGIN ÖZEL ANAHTAR----- ile -----END ÖZEL ANAHTAR----- arasındaki değerdir.

    -----BEGIN PRIVATE KEY-----
    <key_value>
    -----END PRIVATE KEY-----
    

    Bu, daha sonra Notification Hubs'ı yapılandırmak için kullanılacak belirteç değeridir.

Bu adımların sonunda, bildirim hub'ınızı APNS bilgileriyle yapılandırma bölümünde kullanmak üzere aşağıdaki bilgilere sahip olmanız gerekir:

  • Ekip Kimliği (bkz. 1. adım)
  • Paket Kimliği (bkz. 1. adım)
  • Anahtar Kimliği (bkz. 7. adım)
  • Belirteç değeri (.p8 anahtar değeri, bkz. 8. adım)

Sağlama profili oluşturma

  1. iOS Sağlama Portalı'na dönün, Sertifikalar, Tanımlayıcılar ve Profiller'i seçin, sol menüden Profiller'i seçin ve ardından yeni bir profil oluşturmak için seçin+. Yeni Sağlama Profili Kaydet ekranı görüntülenir.

  2. Sağlama profili türü olarak Geliştirme'nin altında iOS Uygulama Geliştirme'yi ve ardından Devam'ı seçin.

    Provisioning profile list

  3. Ardından, Uygulama Kimliği açılan listesinden oluşturduğunuz uygulama kimliğini seçin ve ardından Devam'ı seçin.

    Select App ID

  4. Sertifika seç penceresinde, kod imzalama için kullandığınız geliştirme sertifikasını seçin ve Devam'ı seçin. Bu sertifika, oluşturduğunuz anında iletme sertifikası değil. Yoksa, oluşturmanız gerekir. Bir sertifika varsa sonraki adıma geçin. Yoksa bir geliştirme sertifikası oluşturmak için:

    1. Kullanılabilir Sertifika Yok seçeneğini görüyorsanız Sertifika Oluştur'u seçin.
    2. Yazılım bölümünde Apple Geliştirme'yi seçin. Daha sonra Devam seçeneğini belirleyin.
    3. Yeni Sertifika Oluştur ekranında Dosya Seç'i seçin.
    4. Daha önce oluşturduğunuz Sertifika İmzalama İsteği sertifikasına göz atın, sertifikayı seçin ve ardından Aç'ı seçin.
    5. Devam'ı seçin.
    6. Geliştirme sertifikasını indirin ve kaydedildiği konumu unutmayın.
  5. Sertifikalar, Tanımlayıcılar ve Profiller sayfasına dönün, sol menüden Profiller'i seçin ve ardından yeni bir profil oluşturmak için öğesini seçin+. Yeni Sağlama Profili Kaydet ekranı görüntülenir.

  6. Sertifika seç penceresinde, yeni oluşturduğunuz geliştirme sertifikasını seçin. Daha sonra Devam seçeneğini belirleyin.

  7. Ardından test için kullanılacak cihazları seçin ve Devam'ı seçin.

  8. Son olarak, Sağlama Profili Adı'nda profil için bir ad seçin ve ardından Oluştur'u seçin.

    Choose provisioning profile name

  9. Yeni sağlama profili oluşturulduğunda İndir'i seçin. Kaydedildiği konumu unutmayın.

  10. Sağlama profilinin konumuna göz atın ve ardından Xcode geliştirme makinenize yüklemek için çift tıklayın.

Bildirim hub’ı oluşturma

Bu bölümde bir bildirim hub'ı oluşturacak ve .p12 anında iletme sertifikasını veya belirteç tabanlı kimlik doğrulamasını kullanarak APNS ile kimlik doğrulamasını yapılandıracaksınız. Önceden oluşturduğunuz bir bildirim hub'ını kullanmak istiyorsanız 5. adıma atlayabilirsiniz.

  1. Azure Portal oturum açın.

  2. Soldaki menüden Tüm hizmetler'i ve ardından Mobil bölümünde Notification Hubs'ıseçin. 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. Sık kullanılanlara Notification Hubs'ı ekledikten sonra seçin.

    Azure portal

  3. Notification Hubs sayfasında araç çubuğunda Ekle'yi seçin.

    Add toolbar button

  4. Notification Hubs sayfasında aşağıdaki adımları uygulayın:

    1. Bildirim Hub'ına bir ad girin.
    2. Yeni ad alanı oluşturma bölümüne bir ad girin. Ad alanı bir veya daha fazla bildirim hub'ı içerir.
    3. Konum açılan listesinden bir değer seçin. Bu değer, bildirim hub'ını oluşturmak istediğiniz konumu belirtir.
    4. Kaynak Grubu'nda var olan bir kaynak grubunu seçin veya yeni bir kaynak grubu oluşturun.
    5. Oluştur’u seçin.

    Set properties

  5. Bildirimler'i (zil simgesi) ve ardından Kaynağa git'i seçin. Ayrıca Notification Hubs sayfasında listeyi yenileyebilir ve hub'ınızı seçebilirsiniz.

    Portal notifications

  6. Listeden Erişim İlkeleri'ni seçin. İki bağlantı dizesi kullanabileceğinizi unutmayın. Anında iletme bildirimlerini işlemek için daha sonra bunlara ihtiyacınız olacaktır.

    Önemli

    Uygulamanızda DefaultFullSharedAccessSignature ilkesini kullanmayın. Bu, yalnızca arka ucunuzda kullanılacaktır.

    Connection strings

ApNS bilgileriyle bildirim hub'ını yapılandırma

Bildirim Hizmetleri'nin altında Apple 'ı (APNS) seçin, ardından Notification Hubs için Sertifika Oluşturma bölümünde daha önce seçtiğiniz yaklaşıma göre uygun adımları izleyin.

Dekont

Uygulama Modu için Üretim'i yalnızca uygulamanızı mağazadan satın alan kullanıcılara anında iletme bildirimleri göndermek istiyorsanız kullanın.

Seçenek 1: .p12 anında iletme sertifikası kullanma

  1. Sertifika’yı seçin.

  2. Dosya simgesini seçin.

  3. Daha önce dışarı aktardığınız .p12 dosyasını ve ardından Aç'ı seçin.

  4. Gerekirse doğru parolayı belirtin.

  5. Korumalı alan modunu seçin.

    Configure

  6. Kaydet'i seçin.

Seçenek 2: Belirteç tabanlı kimlik doğrulamayı kullanma

  1. Belirteç'i seçin.

  2. Daha önce edindiğiniz aşağıdaki değerleri girin:

    • Anahtar Kimliği
    • Paket Kimliği
    • Ekip Kimliği
    • Belirteç
  3. Korumalı Alan'ı seçin

  4. Kaydet'i seçin.

Şimdi APNS ile bildirim hub'ınızı yapılandırdıysanız. Ayrıca uygulamanızı kaydetmek ve anında iletme bildirimleri göndermek için gereken bağlantı dizesi sahipsiniz.

Sonraki adımlar

Bu öğreticide, Azure'da bir bildirim hub'ı oluşturup yapılandırıp apple anında iletme bildirimi hizmeti (APNS) aracılığıyla uygulamanıza bildirimlerin gönderilmesine izin verecek şekilde yapılandırmışsınız. Şimdi örnek bir iOS uygulaması oluşturacak ve Azure Portal aracılığıyla gönderilen anında iletme bildirimlerini alabilmesi için Azure Notifications Hubs SDK'sını tümleştireceğiz. Seçtiğiniz dile göre aşağıdaki öğreticiye ilerleyin: