

 AWS Mobile SDK untuk Xamarin sekarang termasuk dalam. AWS SDK untuk .NET Panduan ini menjadi referensi versi yang diarsipkan dari Mobile SDK for Xamarin.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menerima Notifikasi Push menggunakan SNS (Xamarin iOS)
<a name="getting-started-sns-ios"></a>

Dokumen ini menjelaskan cara mengirim notifikasi push ke aplikasi Xamarin iOS menggunakan Amazon Simple Notification Service (SNS) dan AWS Mobile SDK for .NET and Xamarin.

## Penyiapan Proyek
<a name="project-setup"></a>

### Prasyarat
<a name="prerequisites"></a>

Anda harus menyelesaikan semua instruksi yang ada di [Menyiapkan AWS Mobile SDK for .NET and Xamarin](setup.md) sebelum memulai tutorial ini.

### Mengatur Izin untuk SNS
<a name="set-permissions-for-sns"></a>

Ikuti Langkah 2 yang ada di [Menyiapkan AWS Mobile SDK for .NET and Xamarin](setup.md) untuk melampirkan kebijakan yang disebutkan di bawah ini ke peran aplikasi Anda. Hal ini akan memberikan aplikasi Anda izin yang tepat untuk mengakses SNS:

1. Buka [Konsol IAM](https://console.aws.amazon.com/iam/home) dan pilih IAM role yang akan dikonfigurasi.

1. Klik **Lampirkan Kebijakan**, pilih kebijakan SNSFull Akses Amazon dan klik **Lampirkan Kebijakan**.

**Awas**  
Menggunakan Amazon SNSFull Access tidak disarankan di lingkungan produksi. Kami menggunakannya di sini untuk memungkinkan Anda untuk bangun dan berjalan dengan cepat. Untuk informasi selengkapnya tentang bagaimana menentukan izin untuk IAM role, lihat [Gambaran Umum Izin IAM Role](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies_permissions.html).

### Dapatkan Keanggotaan dalam Program Developer iOS Apple
<a name="obtain-membership-in-the-apple-ios-developer-program"></a>

Anda akan perlu menjalankan aplikasi Anda pada perangkat fisik untuk menerima notifikasi push. Untuk menjalankan aplikasi Anda di perangkat, Anda harus memiliki keanggotaan di [Keanggotaan Program Developer iOS Apple](https://developer.apple.com/programs/ios/). Setelah Anda memiliki keanggotaan, Anda dapat menggunakan Xcode untuk membuat identitas penandatanganan. Untuk informasi selengkapnya, lihat dokumentasi [Quick Start Distribusi Aplikasi](https://developer.apple.com/library/mac/documentation/IDEs/Conceptual/AppStoreDistributionTutorial/Introduction/Introduction.html#//apple_ref/doc/uid/TP40013839).

### Membuat Sertifikat iOS
<a name="create-an-ios-certificate"></a>

Pertama, Anda harus membuat Sertifikat iOS. Kemudian, Anda harus membuat profil penyediaan yang dikonfigurasi untuk notifikasi push. Untuk melakukannya:

1. Buka [Pusat Anggota Developer Apple](https://developer.apple.com/membercenter/index.action), klik **Sertifikat, Pengidentifikasi & Profil**.

1. Klik **Pengidentifikasi** di bawah **Aplikasi iOS**, lalu klik tombol plus yang ada di sudut kanan atas halaman web untuk menambahkan ID Aplikasi iOS baru, lalu masukkan deskripsi ID Aplikasi.

1. Gulir ke bawah hingga ke bagian **Tambah Akhiran ID** dan pilih **ID Aplikasi Eksplisit** dan masukkan pengidentifikasi paket Anda.

1. Gulir ke bawah hingga ke bagian **Layanan Aplikasi** dan pilih bagian **Notifikasi push**.

1. Klik **Lanjutkan**.

1. Klik **Kirim**.

1. Klik **Selesai**.

1. Pilih ID Aplikasi yang baru saja dibuat dan kemudian klik **Edit**.

1. Gulir ke bawah hingga ke bagian **Notifikasi Push**. Klik **Buat Sertifikat** di bawah **Sertifikat SSL Pengembangan**.

1. Ikuti petunjuk untuk membuat Permintaan Penandatanganan Sertifikat (CSR), unggah permintaan, dan unduh sertifikat SSL yang akan digunakan untuk berkomunikasi dengan Layanan Notifikasi Apple (APNS).

1. Kembali ke halaman **Sertifikat, Pengidentifikasi & Profil**. Klik **Semua** di bawah **Profil Penyediaan**.

1. Klik tombol plus yang ada di sudut kanan atas untuk menambahkan profil penyediaan baru.

1. Pilih **Aplikasi iOS**, dan kemudian klik **Lanjutkan**.

1. Pilih ID Aplikasi Anda, dan kemudian klik **Lanjutkan**.

1. Pilih sertifikat developer Anda, dan kemudian klik **Lanjutkan**.

1. Pilih perangkat Anda, dan kemudian klik **Lanjutkan**.

1. Masukkan nama profil, dan kemudian klik **Buat**.

1. Unduh dan klik dua kali file penyediaan untuk memasang profil penyediaan.

Untuk informasi lebih lanjut tentang penyediaan profil yang dikonfigurasi untuk notifikasi push, lihat dokumentasi [Mengonfigurasi Notifikasi Push](https://developer.apple.com/library/mac/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringPushNotifications/ConfiguringPushNotifications.html#//apple_ref/doc/uid/TP40012582-CH32-SW1).

### Menggunakan Sertifikat untuk Membuat ARN Platform di Konsol SNS
<a name="use-certificate-to-create-platform-arn-in-sns-console"></a>

1. **Jalankan aplikasi KeyChain akses, pilih **Sertifikat Saya** di sisi kiri bawah layar, lalu klik kanan sertifikat SSL yang Anda buat untuk terhubung ke APNS dan pilih Ekspor.** Anda akan diminta untuk menentukan nama untuk file dan kata sandi untuk melindungi sertifikat. Sertifikat tersebut akan disimpan dalam file P12.

1. Buka [Konsol SNS](https://console.aws.amazon.com/sns/v2/home) dan klik **Aplikasi** yang ada di sisi kiri layar.

1. Klik **Buat aplikasi platform** untuk membuat aplikasi platform SNS baru.

1. Masukkan **Nama Aplikasi**.

1. Pilih **Pengembangan Apple** untuk **Platform notifikasi push**.

1. Klik **Pilih File** dan pilih file P12 yang Anda buat saat Anda mengekspor sertifikat SSL.

1. Masukkan kata sandi yang Anda tentukan saat Anda mengekspor sertifikat SSL dan klik **Memuat Kredensial dari File**.

1. Klik **Buat aplikasi platform**.

1. Pilih Aplikasi Platform yang baru saja Anda buat dan salin ARN Aplikasi-nya. Anda akan membutuhkannya dalam langkah-langkah mendatang.

### Tambahkan NuGet Package untuk SNS ke Proyek Anda
<a name="add-nuget-package-for-sns-to-your-project"></a>

Ikuti Langkah 4 petunjuk dalam [Menyiapkan AWS Mobile SDK untuk.NET dan Xamarin untuk](setup.md) menambahkan paket NuGet Amazon Simple Notification Service ke project Anda.

## Buat Klien SNS
<a name="create-an-sns-client"></a>

```
var snsClient = new AmazonSimpleNotificationServiceClient(credentials, region);
```

## Daftarkan Aplikasi Anda untuk Notifikasi Jarak Jauh
<a name="register-your-application-for-remote-notifications"></a>

Untuk mendaftarkan aplikasi, hubungi RegisterForRemoteNotifications UIApplication objek Anda, seperti yang ditunjukkan di bawah ini. Tempatkan kode berikut AppDelegate di.cs, masukkan ARN aplikasi platform Anda di mana diminta di bawah ini:

```
public override bool FinishedLaunching(UIApplication app, NSDictionary options) {
// do something
var pushSettings = UIUserNotificationSettings.GetSettingsForTypes (
  UIUserNotificationType.Alert |
  UIUserNotificationType.Badge |
  UIUserNotificationType.Sound,
  null
);
app.RegisterUserNotifications(pushSettings);
app.RegisterForRemoteNotifications();
// do something
  return true;
}

public override void RegisteredForRemoteNotifications(UIApplication application, NSData token) {
  var deviceToken = token.Description.Replace("<", "").Replace(">", "").Replace(" ", "");
  if (!string.IsNullOrEmpty(deviceToken)) {
    //register with SNS to create an endpoint ARN
    var response = await SnsClient.CreatePlatformEndpointAsync(
    new CreatePlatformEndpointRequest {
      Token = deviceToken,
      PlatformApplicationArn = "YourPlatformArn" /* insert your platform application ARN here */
    });
  }
}
```

## Mengirim Pesan dari Konsol SNS untuk Titik Akhir Anda
<a name="send-a-message-from-the-sns-console-to-your-endpoint"></a>

1. Buka [Konsol SNS > Aplikasi](https://console.aws.amazon.com/sns/v2/home).

1. Pilih aplikasi platform Anda, pilih titik akhir, dan klik **Publikasikan ke titik akhir**.

1. Ketik pesan teks di kotak teks dan klik **Publikasikan pesan** untuk mempublikasikan pesan.