

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

# Amazon Kinesis Video Streams WebRTC SDK untuk Android
<a name="kvswebrtc-sdk-android"></a>

 step-by-stepPetunjuk berikut menjelaskan cara mengunduh, membuat, dan menjalankan Kinesis Video Streams dengan WebRTC SDK for Android dan sampelnya yang sesuai.

**catatan**  
Amazon Kinesis Video Streams IPv6 tidak mendukung alamat di Android. Lihat informasi selengkapnya tentang [menonaktifkan IPv6 di perangkat Android Anda](https://www.cactusvpn.com/tutorials/how-to-disable-ipv6-on-android/).

## Unduh SDK
<a name="download-sdk-android"></a>

Untuk mengunduh SDK WebRTC di Android, jalankan perintah berikut:

```
$ git clone https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-android.git
```

## Membangun SDK
<a name="build-sdk-android"></a>

Untuk membangun SDK WebRTC di Android, selesaikan langkah-langkah berikut:

1. **Impor Android WebRTC SDK ke lingkungan pengembangan terintegrasi (IDE) Android Studio dengan membuka dengan Open as Project. `amazon-kinesis-video-streams-webrtc-sdk-android/build.gradle`** 

1. Jika Anda membuka proyek untuk pertama kalinya, secara otomatis akan disinkronkan. Jika tidak - memulai sinkronisasi. Ketika Anda melihat kesalahan build, pilih untuk menginstal apa pun yang diperlukan SDKs dengan memilih **Instal paket SDK yang hilang**, lalu pilih **Terima** dan selesaikan penginstalan.

1. Konfigurasikan setelan Amazon Cognito (kumpulan pengguna dan kumpulan identitas). Untuk langkah-langkah detail, lihat[Konfigurasikan Amazon Cognito untuk SDK](#build-sdk-android-cognito). Ini menghasilkan pengaturan autentikasi dan otorisasi yang diperlukan untuk membangun Android WebRTC SDK.

1. Di IDE Android Anda, buka `awsconfiguration.json` (dari`src/main/res/raw/`). File tersebut terlihat seperti berikut:

   ```
   {
     "Version": "1.0",
     "CredentialsProvider": {
       "CognitoIdentity": {
         "Default": {
           "PoolId": "REPLACE_ME",
           "Region": "REPLACE_ME"
         }
       }
     },
     "IdentityManager": {
       "Default": {}
     },
     "CognitoUserPool": {
       "Default": {
         "AppClientSecret": "REPLACE_ME",
         "AppClientId": "REPLACE_ME",
         "PoolId": "REPLACE_ME",
         "Region": "REPLACE_ME"
       }
     }
   }
   ```

   Perbarui `awsconfiguration.json` dengan nilai yang dihasilkan dengan menjalankan langkah-langkah di[Konfigurasikan Amazon Cognito untuk SDK](#build-sdk-android-cognito).

1. Pastikan perangkat Android Anda terhubung ke komputer tempat Anda menjalankan IDE Android. Di Android IDE, pilih perangkat yang terhubung lalu buat dan jalankan WebRTC Android SDK.

   Langkah ini menginstal aplikasi yang dipanggil `AWSKinesisVideoWebRTCDemoApp` di perangkat Android Anda. Dengan menggunakan aplikasi ini, Anda dapat memverifikasi streaming WebRTC langsung antara audio/video klien perangkat seluler, web, dan IoT.

## Jalankan aplikasi sampel
<a name="run-sdk-android"></a>

****

Selesaikan langkah-langkah berikut:

1. Di perangkat Android Anda, buka **AWSKinesisVideoWebRTCDemoAplikasi** dan masuk menggunakan akun baru (dengan membuatnya terlebih dahulu) atau akun Amazon Cognito yang sudah ada.

1. Di **AWSKinesisVideoWebRTCDemoApp**, navigasikan ke halaman **Konfigurasi Saluran** dan buat saluran pensinyalan baru atau pilih yang sudah ada.
**catatan**  
**Saat ini, dengan menggunakan contoh aplikasi di SDK ini, Anda hanya dapat menjalankan satu saluran pensinyalan di AWSKinesis VideoWeb RTCDemo App.**

1. Opsional: pilih **ID Klien** unik jika Anda ingin terhubung ke saluran ini sebagai penampil. ID klien hanya diperlukan jika beberapa pemirsa terhubung ke saluran. Ini membantu master saluran mengidentifikasi masing-masing pemirsa.

1. Pilih Wilayah AWS dan apakah Anda ingin mengirim data audio atau video, atau keduanya.

1. Untuk memverifikasi peer-to-peer streaming, lakukan salah satu hal berikut:
**catatan**  
Pastikan Anda menentukan nama saluran pensinyalan, AWS wilayah, ID penampil, dan ID AWS akun yang sama pada semua klien yang Anda gunakan dalam demo ini.
   + Peer-to-peer streaming antara dua perangkat Android: master dan viewer
     + Menggunakan prosedur di atas, unduh, buat, dan jalankan Android WebRTC SDK di dua perangkat Android. 
     + Buka **AWSKinesisVideoWebRTCDemoAplikasi** di satu perangkat Android dalam mode master (pilih **MULAI MASTER**) untuk memulai sesi baru (saluran pensinyalan).
**catatan**  
Saat ini, hanya ada satu master untuk saluran pensinyalan tertentu.
     + Buka **AWSKinesisVideoWebRTCDemoAplikasi** di perangkat Android kedua Anda dalam mode penampil untuk terhubung ke saluran pensinyalan (sesi) yang dimulai pada langkah di atas (pilih **MULAI PENAMPIL**).

       Verifikasi bahwa pemirsa dapat melihat audio/video data master.
   + Peer-to-peer streaming antara master SDK yang disematkan dan penampil perangkat Android
     + Unduh, buat, dan jalankan mode master [Amazon Kinesis Video Streams dengan WebRTC SDK di C untuk perangkat yang disematkan](kvswebrtc-sdk-c.md) di perangkat kamera. 
     + Menggunakan prosedur di atas, unduh, buat, dan jalankan Android WebRTC SDK di perangkat Android. Buka **AWSKinesisVideoWebRTCDemoAplikasi** di perangkat Android ini dalam mode penampil dan verifikasi bahwa penampil dapat melihat audio/video data master SDK yang disematkan.
   + Peer-to-peer streaming antara perangkat Android sebagai master dan browser web sebagai penampil
     + Menggunakan prosedur di atas, unduh, buat, dan jalankan Android WebRTC SDK di perangkat Android. Buka **AWSKinesisVideoWebRTCDemoAplikasi** di perangkat Android ini dalam mode master (pilih **MULAI MASTER**) untuk memulai sesi baru (saluran pensinyalan).
     + Unduh, buat, dan jalankan penampil [Amazon Kinesis Video Streams dengan WebRTC JavaScript SDK untuk aplikasi web](kvswebrtc-sdk-js.md) as dan verifikasi bahwa pemirsa dapat melihat audio/video master Android. 

## Konfigurasikan Amazon Cognito untuk SDK
<a name="build-sdk-android-cognito"></a>

### Prasyarat
<a name="androidsdk-prerequisites"></a>
+ Kami merekomendasikan [Android Studio](https://developer.android.com/studio/index.html) untuk memeriksa, mengedit, dan menjalankan kode aplikasi. Kami merekomendasikan menggunakan versi stabil terbaru.
+ Dalam kode contoh, Anda memberikan kredensi Amazon Cognito.

Ikuti prosedur ini untuk menyiapkan kumpulan pengguna Amazon Cognito dan kumpulan identitas.

### Siapkan kumpulan pengguna
<a name="setup-user-pool"></a>

**Untuk mengatur kumpulan pengguna**

1. Masuk ke [konsol Amazon Cognito](https://console.aws.amazon.com/cognito/home) dan verifikasi wilayah tersebut benar.

1. Di navigasi di sebelah kiri pilih **Kumpulan pengguna**.

1. Di bagian **User pool**, pilih **Create user pool**.

1. Lengkapi bagian berikut:

   1. **Langkah 1: Konfigurasikan pengalaman masuk** - Di bagian opsi **masuk kumpulan pengguna Cognito**, pilih opsi yang sesuai.

      Pilih **Selanjutnya**.

   1. **Langkah 2: Konfigurasikan persyaratan keamanan** - Pilih opsi yang sesuai.

      Pilih **Selanjutnya**.

   1. **Langkah 3: Konfigurasikan pengalaman pendaftaran** - Pilih opsi yang sesuai.

      Pilih **Selanjutnya**.

   1. **Langkah 4: Konfigurasikan pengiriman pesan** - Pilih opsi yang sesuai.

      Di bidang **pemilihan peran IAM**, pilih peran yang ada atau buat peran baru.

      Pilih **Selanjutnya**.

   1. **Langkah 5: Integrasikan aplikasi Anda** - Pilih opsi yang sesuai.

      Di bidang **Klien aplikasi awal**, pilih **Klien rahasia**.

      Pilih **Selanjutnya**.

   1. **Langkah 6: Tinjau dan buat** - Tinjau pilihan Anda dari bagian sebelumnya, lalu pilih **Buat kumpulan pengguna**.

1. Pada halaman **User pool**, pilih pool yang baru saja Anda buat.

   Salin **ID kumpulan Pengguna** dan catat ini untuk nanti. Dalam `awsconfiguration.json` file, ini adalah`CognitoUserPool.Default.PoolId`.

1. Pilih tab **Integrasi aplikasi** dan pergi ke bagian bawah halaman.

1. Di bagian **Daftar klien Aplikasi**, pilih **nama klien Aplikasi** yang baru saja Anda buat.

   Salin **ID Klien** dan catat ini untuk nanti. Dalam `awsconfiguration.json` file, ini adalah`CognitoUserPool.Default.AppClientId`.

1. Tunjukkan **rahasia Klien** dan catat ini untuk nanti. Dalam `awsconfiguration.json` file, ini adalah`CognitoUserPool.Default.AppClientSecret`.

### Siapkan kolam identitas
<a name="setup-identity-pool"></a>

**Untuk mengatur kumpulan identitas**

1. Masuk ke [konsol Amazon Cognito](https://console.aws.amazon.com/cognito/home) dan verifikasi wilayah tersebut benar.

1. Di navigasi di sebelah kiri pilih **Identity pool**.

1. Pilih **Buat kumpulan identitas**.

1. Konfigurasikan kumpulan identitas.

   1. **Langkah 1: Konfigurasikan kepercayaan kumpulan identitas** - Lengkapi bagian berikut:
      + **Akses pengguna - Pilih Akses** yang **Diautentikasi**
      + **Sumber identitas yang diautentikasi** - Pilih kumpulan **pengguna Amazon Cognito**

      Pilih **Selanjutnya**.

   1. **Langkah 2: Konfigurasikan izin** - Di bagian **peran yang diautentikasi**, lengkapi bidang berikut:
      + Peran **IAM - Pilih Buat peran** **IAM baru**
      + **Nama peran IAM** - Masukkan nama dan catat untuk langkah selanjutnya.

      Pilih **Selanjutnya**.

   1. **Langkah 3: Hubungkan penyedia identitas** - Di bagian **Rincian kumpulan pengguna**, lengkapi bidang berikut: 
      + **ID kumpulan pengguna** - Pilih kumpulan pengguna yang Anda buat sebelumnya.
      + **ID klien aplikasi** - Pilih ID klien aplikasi yang Anda buat sebelumnya.

      Pilih **Selanjutnya**.

   1. **Langkah 4: Konfigurasikan properti** - Ketik nama di bidang **Identity pool name**.

      Pilih **Selanjutnya**.

   1. **Langkah 5: Tinjau dan buat** - Tinjau pilihan Anda di setiap bagian, lalu pilih **Buat kumpulan identitas**.

1. Pada halaman **Identity pool**, pilih kumpulan identitas baru Anda.

   Salin **ID kumpulan Identitas** dan catat ini untuk nanti. Dalam `awsconfiguration.json` file, ini adalah`CredentialsProvider.CognitoIdentity.Default.PoolId`.

1. Perbarui izin untuk peran IAM.

   1. Masuk ke Konsol Manajemen AWS dan buka konsol IAM di [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. Di navigasi di sebelah kiri, pilih **Peran**.

   1. Temukan dan pilih peran yang Anda buat di atas.
**catatan**  
Gunakan bilah pencarian, jika perlu.

   1. Pilih kebijakan izin terlampir.

      Pilih **Edit**.

   1. Pilih tab **JSON** dan ganti kebijakan dengan yang berikut:

      ```
      {
          "Version": "2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "cognito-identity:*",
                      "kinesisvideo:*"
                  ],
                  "Resource": [
                      "*"
                  ]
              }
          ]
      }
      ```

      Pilih **Selanjutnya**.

   1. Pilih kotak di samping **Setel versi baru ini sebagai default** jika belum dipilih.

      Pilih **Simpan perubahan**.