1から始めるiOSチーム開発：リポジトリからのチェックアウト〜プロビジョニングプロファイル準備編


# 前回まで
* [1から始めるiOSチーム開発：序](http://qiita.com/kurumaya/items/b204cbb7e83a63279133)
	* [Apple Developer Programにメンバーを招待する](http://qiita.com/kurumaya/items/9c007685543f51f14dd2)
	* [Apple Developer Programの招待を受ける](http://qiita.com/kurumaya/items/47c7af4662d9e6fc8634)

前提：Apple Developer登録が完了していること。

# 0. Xcodeをインストール

開発者登録が無事終わったところで、開発環境を整えましょう。

統合開発環境として[Xcode](https://itunes.apple.com/jp/app/xcode/id497799835)を使用します。MacのApp Storeからインストールしてください。2015/01現在、最新は6.1.1です[^1]。 


# 1. リポジトリからソースをチェックアウト

Xcodeにはリモートのリポジトリから直接チェックアウトする機能が用意されていますので、Xcodeからcloneしてきます。ローカルにチェックアウト済の場合は飛ばしてください。

![02_clone_url.png](https://qiita-image-store.s3.amazonaws.com/0/15926/1446c4c4-c11b-75bc-00b8-f61ce737eaa0.png "02_clone_url.png")
cloneするURLをコピーしておきましょう。GitHubを使っている場合、プロジェクトページの右下の方にURLがあります。

![01_welcome_to_xcode.png](https://qiita-image-store.s3.amazonaws.com/0/15926/45f90290-c22b-9357-526e-e74d241a2b7b.png "01_welcome_to_xcode.png")
チェックアウトを選択します。

![10_Check_Out.png](https://qiita-image-store.s3.amazonaws.com/0/15926/af3f3fc4-6a60-0aa2-41d1-cdf7be052708.png "10_Check_Out.png")
リポジトリの場所を入力してからNextを押してください。



![11_Check_Out.png](https://qiita-image-store.s3.amazonaws.com/0/15926/7a982eaa-d12a-28cd-617c-483bfd325357.png "11_Check_Out.png")
プライベートリポジトリの場合はリポジトリにアクセスできるアカウントが必要ですので、GitHubログインに使っているユーザ名とパスワードを入力して進んでください。

![12_Check_Out.png](https://qiita-image-store.s3.amazonaws.com/0/15926/413cd454-f25d-280c-aa12-b888862a8995.png "12_Check_Out.png")
ブランチを選んで次へ進み、任意のフォルダにチェックアウトします。

![13_スクリーンショット_2015_01_12_13_22.png](https://qiita-image-store.s3.amazonaws.com/0/15926/eb8ebcf8-a554-ad65-c6c2-da679d8d234a.png "13_スクリーンショット_2015_01_12_13_22.png")

# 2. Xcodeへアカウントを追加

プロジェクトを開いたら、左のプロジェクトルートをクリックします。

![20_no_provisioning.png](https://qiita-image-store.s3.amazonaws.com/0/15926/77f520e9-b80e-27c3-b10a-f967e1071f69.png "20_no_provisioning.png")

「no matching provisioning profiles found」と警告が表示されています。これは指定されているプロビジョニングプロファイルが存在しないという警告です。
プロビジョニングプロファイルは開発者、アプリ、使用できる端末の情報がまとまったもので、端末を使用してのテスト・アプリのバイナリ化・アプリストア公開などで必要になります。

プロビジョニングプロファイルの管理はPreferences > Accountsで行います。Xcodeのメニューから開いてください。

![21_Accounts.png](https://qiita-image-store.s3.amazonaws.com/0/15926/0e2b6b79-dbec-29bd-8e0f-44b86c215cd6.png "21_Accounts.png")
チェックアウトしたリポジトリが表示されています。ここへ自分のApple IDを追加します。

![22_スクリーンショット_2015_01_12_13_37.png](https://qiita-image-store.s3.amazonaws.com/0/15926/ecff72c7-8cad-ffd0-6209-e53f1568e48c.png "22_スクリーンショット_2015_01_12_13_37.png")
Apple Developerに登録したApple IDを入力してください。

# 3. 開発用のプロビジョニングプロファイルを準備

![23_Accounts.png](https://qiita-image-store.s3.amazonaws.com/0/15926/87457707-d285-a91c-1ef5-e0ff355c1a0a.png "23_Accounts.png")
追加したApple IDを選択し、右下の「View Details...」をクリックします。

![24_スクリーンショット_2015_01_12_13_38.png](https://qiita-image-store.s3.amazonaws.com/0/15926/9ce8021f-5116-1c4f-4d47-b10ce6a806fa.png "24_スクリーンショット_2015_01_12_13_38.png")

アカウント情報が表示されました。Apple DeveloperからダウンロードなどしなくてもプロビジョニングプロファイルはXcodeが管理してくれます。
初期状態ではSigning Identitiesが真っ白です。これはApple Developerの「[iOS Certificates](https://developer.apple.com/account/ios/certificate/certificateList.action)」と連携しています。

![25_Accounts.png](https://qiita-image-store.s3.amazonaws.com/0/15926/1c5b69dc-1ede-3ce5-c04a-bd3363d7a5c3.png "25_Accounts.png")
+ボタンをクリックして、「iOS Development」を追加してください。

![30_set_provisioning.png](https://qiita-image-store.s3.amazonaws.com/0/15926/90be681b-5905-7c0c-723b-89c2db24b282.png "30_set_provisioning.png")
プロジェクトを開き、Build SettingsのCode Signingとプロビジョニングプロファイルを設定します。Code signing Identityには「iPhone Developer: ユーザ名（ID）」を、Provisioning Profileには「iOS Team Provisioning Profile: アプリのBundle Identifier」を選択します。
見つからない場合はそのまま進んでください。最近作られたアプリであれば自動的に選択するようになっているので、設定する必要はありません。

これで実機によるテストができるようになりました。
端末をUSBにつないで、左上のRunボタンから実行してみましょう。

![40_スクリーンショット_2015_01_12_16_58.png](https://qiita-image-store.s3.amazonaws.com/0/15926/c363fc4d-b7f2-d746-1e01-63486d5d21b7.png "40_スクリーンショット_2015_01_12_16_58.png")

もし上のように表示される場合、端末が登録されていないかもしれません。次に進みます。

# 4. テスト用の端末をApple Developerへ登録する

## Xcodeで追加する端末のIDをコピー

Xcodeのメニューから、Window > Devicesを選択します。

![41_Devices.png](https://qiita-image-store.s3.amazonaws.com/0/15926/d14810f3-e735-1ccb-3f98-ca14d164d948.png "41_Devices.png")
接続している端末のIdentifierをコピーしてください。

## Apple Developerで端末を追加

Apple Developerへログインし、[端末管理画面](https://developer.apple.com/account/ios/device/deviceList.action)を開いてください。
Member Center > Certificates, Identifiers & Profiles > Devicesで入れます。

![42_iOS_Devices_-_Apple_Developer.png](https://qiita-image-store.s3.amazonaws.com/0/15926/e63f16ac-3629-8c07-e334-06beba688554.png "42_iOS_Devices_-_Apple_Developer.png")

+ボタンを押して端末を追加します。
![43_Add_-_iOS_Devices_-_Apple_Developer.png](https://qiita-image-store.s3.amazonaws.com/0/15926/fc2a724a-08d9-ec7b-10db-f46de74f8765.png "43_Add_-_iOS_Devices_-_Apple_Developer.png")

![44_Add_-_iOS_Devices_-_Apple_Developer.png](https://qiita-image-store.s3.amazonaws.com/0/15926/f51980e2-4062-5874-bffa-9111e797f1ee.png "44_Add_-_iOS_Devices_-_Apple_Developer.png")

UDIDに先ほどXcodeでコピーした端末のIdentifierを貼り付けます。
Nameはなんでもかまいません。判別しやすいように所有者＋端末のモデル名などとつけておきましょう。

![45_Add_-_iOS_Devices_-_Apple_Developer.png](https://qiita-image-store.s3.amazonaws.com/0/15926/83bc0b7f-dae9-fc24-2d6d-2129b0592a86.png "45_Add_-_iOS_Devices_-_Apple_Developer.png")
UDIDに間違いないか確認し、登録してください。

![46_Add_-_iOS_Devices_-_Apple_Developer.png](https://qiita-image-store.s3.amazonaws.com/0/15926/7434d8d4-3a00-ca26-a821-2e78a8794802.png "46_Add_-_iOS_Devices_-_Apple_Developer.png")

## トラブルシューティング
端末追加がうまくいかないときに参照してください。

### 端末追加ボタンがグレーアウトしているときは更新をかける

もし端末管理画面で+ボタンがグレーアウトし、「Reset your device list before adding any new devices.」などと表示されている場合は、以下のページを参考に端末情報をリセットしてください。

> iOS Dev Center のデバイスリスト更新
> http://blog.miyadi.net/archives/1385

### 端末追加してもApp installation failedのまま

同じエラーで実行できない場合、まずXcodeのPreferences > Accounts > View Details...からプロビジョニングプロファイルを更新します。

![50_スクリーンショット_2015_01_12_17_38.png](https://qiita-image-store.s3.amazonaws.com/0/15926/83b6de37-f0d6-88fb-09f9-05de9067678a.png "50_スクリーンショット_2015_01_12_17_38.png")

端末を一度USBから取り外してもう一度接続したら、
Build Settings > Code Signingのプロビジョニングプロファイルを選択し直し、実行してください。



[^1]: OS X 10.9.4（Mavericks）以降が必要です。それ以前のOSを使っている場合、旧バージョンを[Apple Developerのダウンロードページ](https://developer.apple.com/downloads/index.action)（要ログイン）から落とせます。