# 過去のセットアップドキュメント

## システム条件

Sora iOS SDK を利用するアプリケーションの開発に必要なシステム条件を次に示します。

- iOS 14 以降
- アーキテクチャ arm64 (シミュレーターの動作は未保証です)
- Xcode 16.2
- Swift 5.10
- CocoaPods 1.15.2 以降 (Swift Package Manager を利用する場合は不要です)
- WebRTC SFU Sora 2024.2.0 以降

## Xcode プロジェクトのセットアップ

## 概要

Sora iOS SDK は CocoaPods または Swift Package Manager を利用してアプリケーションに追加できます。

### CocoaPods を利用する

#### Spec リポジトリを登録する (初回のみ)

Sora iOS SDK は専用の Spec リポジトリで配布しています。
CocoaPods を利用する際は、次の手順で Spec リポジトリをローカルの環境に登録してください。

1. Spec リポジトリをローカルの Spec リポジトリに登録します。


   ```
   $ pod repo add sora-ios-sdk-specs https://github.com/shiguredo/sora-ios-sdk-specs.git
   ```
2. Spec のリストを更新します。


   ```
   $ pod repo update
   ```

以上の操作が必要になるのは初回のみです。
プロジェクト生成のたびに実行する必要はありません。

#### Podfile を用意する

1. 先頭に次の記述を追加します。 Sora iOS SDK の Spec リポジトリから検索するようにします。


   ```
   source 'https://cdn.cocoapods.org/'
   source 'https://github.com/shiguredo/sora-ios-sdk-specs.git'
   ```
2. Sora iOS SDK を利用するターゲットに `pod 'Sora', VERSION` の形式で `Sora` ライブラリを追加します。以下に例を示します。


   ```
   source 'https://github.com/shiguredo/sora-ios-sdk-specs.git'
   source 'https://github.com/CocoaPods/Specs.git'

   platform :ios, '10.0'

   target 'SoraQuickStart' do
     use_frameworks!
     pod 'Sora', '2020.7'
   end
   ```
3. `pod install` を実行してライブラリをインストールします。

### Swift Package Manager を利用する

#### パッケージを追加する

1. Xcodeのメニューから［File］－［Add Packages...］ を選択します
2. 検索ボックスに https://github.com/shiguredo/sora-ios-sdk を入力します

![image](images/setup/spm_package_repository.png)

3. 利用するSDK のバージョンを選択して ［Add Package］を選択します

![image](images/setup/spm_package_version.png)

4. Sora, WebRTC の両方を選択して ［Add Package］を選択します

![image](images/setup/spm_select_package.png)

### カメラとマイクを許可する

ナビゲーターエリアからプロジェクトエディターの Info タブを開き Custom iOS Target Properties にカメラとマイクの用途を記述します。
この記述を追加しないとアプリケーションが強制終了するので、必ず記述してください。

※ Xcode13 以前からのプロジェクトを利用する場合は、Info.plist ファイルに以下の記述を追加してください。

- カメラの用途: "Privacy - Camera Usage Description"
- マイクの用途: "Privacy - Microphone Usage Description"

設定例:

![image](images/setup/privacy_settings.png)
