

# 步驟 4：整合 IVS 廣播 SDK
<a name="getting-started-broadcast-sdk"></a>

IVS 提供適用於 Web、Android 和 iOS 的廣播 SDK，並且您可以將其整合至應用程式。廣播 SDK 用於傳送和接收影片。如果已[為舞台設定 RTMP 擷取](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/rt-stream-ingest.html)，則可以使用任何可以廣播到 RTMP 端點的編碼器 (例如 OBS 或 ffmpeg)。

在本節中，我們編寫了一個簡單的應用程式，讓兩個或更多參與者可以即時進行互動。下列步驟將引導您建立一個稱為 BasicRealTime 的應用程式。應用程式的完整程式碼位於 CodePen 和 GitHub：
+  Web：[https://codepen.io/amazon-ivs/pen/ZEqgrpo](https://codepen.io/amazon-ivs/pen/ZEqgrpo) 
+  Android 版：[https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples) 
+  iOS 版：[https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples) 

## Web
<a name="getting-started-broadcast-sdk-web"></a>

### 設定檔案
<a name="getting-started-broadcast-sdk-web-setup"></a>

首先，建立資料夾和初始 HTML 和 JS 檔案來設定檔案：

```
mkdir realtime-web-example
cd realtime-web-example
touch index.html
touch app.js
```

您可以使用指令碼標籤或 NPM 來安裝廣播 SDK。為了簡單起見，範例使用指令碼標籤，但如果您稍後選擇使用 NPM，修改起來會很容易。

### 使用指令碼標籤
<a name="getting-started-broadcast-sdk-web-script"></a>

Web 廣播開發套件以 JavaScript 程式庫的形式發佈，可以在 [https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js](https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js) 上擷取。

透過 `<script>` 標籤載入時，程式庫會在名為 `IVSBroadcastClient` 的視窗範圍中公開全域變數。

### 使用 NPM
<a name="getting-started-broadcast-sdk-web-npm"></a>

安裝 NPM 套件：

```
npm install amazon-ivs-web-broadcast
```

您現在可以存取 IVSBroadcastClient 物件：

```
const { Stage } = IVSBroadcastClient;
```

## Android
<a name="getting-started-broadcast-sdk-android"></a>

### 建立 Android 專案
<a name="getting-started-broadcast-sdk-android-project"></a>

1. 在 Android Studio 中，建立**新專案**。

1. 選擇**空白檢視活動**。

   注意：在舊版 Android Studio 中，以檢視為基礎的活動被稱為**空活動**。如果您的 Android Studio 視窗顯示**空活動**，並確實*不*顯示**空檢視**活動，則請選取**空活動**。否則，請勿選取**空活動**，因為我們將使用 View API (而不是 Jetpack Compose)。

1. 為您的專案**命名**，然後選取**完成**。

### 安裝廣播 SDK
<a name="getting-started-broadcast-sdk-android-install"></a>

若要將 Amazon IVS Android 廣播程式庫新增到您的 Android 開發環境中，請將該程式庫新增到模組的 `build.gradle` 檔案，如下所示 (適用於 Amazon IVS 廣播 SDK 的最新版本)。在較新的專案中，`mavenCentral` 儲存庫可能已包含在您的 `settings.gradle` 檔案中，如果是這種情況，則您可以省略 `repositories` 區塊。在我們的範例中，也需要在 `android` 區塊中啟用資料繫結。

```
android {
    dataBinding.enabled true
}

repositories {
    mavenCentral()
}
 
dependencies {
     implementation 'com.amazonaws:ivs-broadcast:1.40.0:stages@aar'
}
```

或者，若要手動安裝 SDK，請從此位置下載最新版本：

[https://search.maven.org/artifact/com.amazonaws/ivs-broadcast](https://search.maven.org/artifact/com.amazonaws/ivs-broadcast)

## iOS
<a name="getting-started-broadcast-sdk-ios"></a>

### 建立 iOS 專案
<a name="getting-started-broadcast-sdk-ios-project"></a>

1. 建立新的 Xcode 專案。

1. 若是**平台**，請選取 **iOS**。

1. 若是**應用程式**，請選取**应用程式**。

1. 輸入應用程式的**產品名稱**，然後選取**下一步**。

1. 選擇 (導覽至) 儲存專案的目錄，然後選取**建立**。

接著，您需要在 SDK 使用。如需指示，請參閱 *iOS 廣播 SDK 指南*中的[安裝程式庫](broadcast-ios-getting-started.md#broadcast-ios-install)。

### 設定許可
<a name="getting-started-broadcast-sdk-ios-config"></a>

您需要更新您的專案 `Info.plist`，以新增 `NSCameraUsageDescription` 和 `NSMicrophoneUsageDescription` 的兩個項目。針對這些值，請提供解釋應用程式為何要求攝影機和麥克風存取權的面向使用者的說明。

![\[設定 iOS 許可\]](http://docs.aws.amazon.com/zh_tw/ivs/latest/RealTimeUserGuide/images/iOS_Configure.png)
