

# IVS iOS Broadcast SDK の開始方法 \$1 Real-Time Streaming
<a name="broadcast-ios-getting-started"></a>

このドキュメントでは、IVS Real-Time Streaming iOS Broadcast SDK の使用を開始するためのステップについて説明します。

## ライブラリのインストール
<a name="broadcast-ios-install"></a>

Swift Package Manager を介して Broadcast SDK を統合することをお勧めします。(代わりに、フレームワークを手動でプロジェクトに追加することも可能です)。

### 推奨: Broadcast SDK の統合 (Swift Package Manager)
<a name="broadcast-ios-install-swift"></a>

1. Package.swift ファイルを「[https://broadcast.live-video.net/1.40.0/Package.swift](https://broadcast.live-video.net/1.40.0/Package.swift)」からダウンロードしてください。

1. プロジェクトで AmazonIVSBroadcast という名前の新しいディレクトリを作成し、バージョン管理に追加します。

1. ダウンロードした Package.swift ファイルを新しいディレクトリに配置します。

1. Xcode で **[ファイル] > [パッケージの依存関係を追加]** に移動し、**[ローカルに追加]** を選択します。

1. 作成した AmazonIVSBroadcast ディレクトリに移動して選択たら、**パッケージの追加**を選択します。

1. **AmazonIVSBroadcast のパッケージ製品の選択**を求められたら、「**ターゲットに追加**」セクションでアプリケーションターゲットを設定し、**パッケージ製品**として **[AmazonIVSBroadcastStages]** を選択します。

1. **パッケージの追加**を選択します。

**重要**: IVS リアルタイムストリーミングの Broadcast SDK には、IVS 低レイテンシーストリーミング Broadcast SDK のすべての機能が含まれます。両方の SDK を同じプロジェクトに統合することはできません。

### 代替方法: フレームワークを手動でインストールする
<a name="broadcast-ios-install-manual"></a>

1. 次のリンクから最新バージョンをダウンロードします。[ https://broadcast.live-video.net/1.40.0/AmazonIVSBroadcast-Stages.xcframework.zip](https://broadcast.live-video.net/1.40.0/AmazonIVSBroadcast-Stages.xcframework.zip).

1. アーカイブの内容を抽出します。`AmazonIVSBroadcast.xcframework` には、デバイスとシミュレータの両方の SDK が含まれています。

1. アプリケーションターゲットの [**全般**] タブの、[**Frameworks, Libraries, and Embedded Content (フレームワーク、ライブラリ、埋め込みコンテンツ)**] のセクションに `AmazonIVSBroadcast.xcframework` をドラッグして埋め込みます。  
![\[アプリケーションターゲットの [全般] タブの[Frameworks, Libraries, and Embedded Content (フレームワーク、ライブラリ、埋め込みコンテンツ)] セクション。\]](http://docs.aws.amazon.com/ja_jp/ivs/latest/RealTimeUserGuide/images/iOS_Broadcast_SDK_Guide_xcframework.png)

## 必要なアクセス許可
<a name="broadcast-ios-permissions"></a>

アプリはユーザーのカメラとマイクへのアクセス許可を要求する必要があります。(これは、Amazon IVS に特有なものではなく、カメラやマイクにアクセスする必要があるアプリケーションには必須です。)

ここでは、ユーザーがすでにアクセス許可を付与しているかどうかを確認し、付与していない場合は、許可を求めます。

```
switch AVCaptureDevice.authorizationStatus(for: .video) {
case .authorized: // permission already granted.
case .notDetermined:
   AVCaptureDevice.requestAccess(for: .video) { granted in
       // permission granted based on granted bool.
   }
case .denied, .restricted: // permission denied.
@unknown default: // permissions unknown.
}
```

カメラやマイクにアクセスするには、`.video` と `.audio` の両方のメディアタイプに対してこれを行う必要があります。

また、`NSCameraUsageDescription` と `NSMicrophoneUsageDescription` のエントリを `Info.plist` に追加する必要があります。これを行わずにアクセス許可をリクエストすると、アプリがクラッシュします。

## アプリケーションアイドルタイマーの無効化
<a name="broadcast-ios-disable-idle-timer"></a>

これはオプションですが推奨されます。Broadcast SDK の使用中にデバイスがスリープ状態になり、ブロードキャストが中断されるのを防ぎます。

```
override func viewDidAppear(_ animated: Bool) {
   super.viewDidAppear(animated)
   UIApplication.shared.isIdleTimerDisabled = true
}
override func viewDidDisappear(_ animated: Bool) {
   super.viewDidDisappear(animated)
   UIApplication.shared.isIdleTimerDisabled = false
}
```