Firebaseで超簡単にiOSアプリを配布する🎣

今回はFirebaseのApp Distributionを使って手動でアプリを配布する方法を紹介いたします

# 準備するもの

- Firebaseプロジェクトの登録
- Apple Developer Programの登録
- 共有するメンバーのデバイスをDeveloperアカウントに登録
- 共有するメンバーのメールアドレス
- iOS DistributionタイプのCertificates登録
- AdHoc用のProvisioning Profile登録

# アプリのipaファイルを取得

#### アプリのアーカイブを生成

まずは、配布するアプリのビルドをipaとしてアーカイブします。既にアーカイブしている場合はOrganizerからアーカイブを選択します。
<img width="787" alt="スクリーンショット 2019-12-21 21.04.18.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/a912d155-b175-4b73-f953-34f6dfcad1b6.png">

#### アーカイブからipaファイルを生成

AdHocを選択し、手順にそってipaを作成していきます。Select Certificates&ProfileではiOS DistributionタイプのCertificatesとAdHoc用のProvisioning Profileを選択し作成します。

<img width="1356" alt="スクリーンショット 2019-12-21 21.09.42.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/74097fe2-9a40-a1e9-4cc6-a18f93c6fa89.png">

# ipaファイルをFirebaseにアップロード

ドラッグ&ドロップまたは`参照`を押してFirebaseにipaファイルをアップロードします.

<img width="1174" alt="スクリーンショット 2019-12-21 21.29.21.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/68f4e1c2-0b4e-9cc8-e33f-b5c25423d63e.png">

次に共有するメンバーのメールアドレスを登録します。なお、この共有するメンバーのデバイスはApple Developer ProgramのDevicesに登録しておく必要があります。
<img width="1171" alt="スクリーンショット 2019-12-21 21.31.36.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/86bae46a-5f26-3a65-8b36-5c88b8609e23.png">

リリースノートを記入して`配信しました`ボタンを押すとメンバーにFirebaseからメールが届きます。

<img width="1173" alt="スクリーンショット 2019-12-21 21.32.32.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/d3fa35a9-47ed-f3e8-ad05-c33df37d5ce2.png">

# アプリをデバイスにインストール

`Download tha latest build`をタップしてProfileをInstallします。

<img width="414" alt="IMG_0640.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/fb17a1c7-a64e-807a-9bc9-36e4a38d609c.jpeg">

 Safariでリンクを開き`Download`をタップします

<img width="414" alt="IMG_0641.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/f419f5b2-94fe-795b-f46d-bc450477b748.png">

次のようなポップアップダイアログが出るのでInstallを押してデバイスにProfileをインストールしていきます。

<img width="414" alt="IMG_0642.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/833fca07-acc5-e657-b569-6e456dde3adf.png">

下記の手順の通り`設定`に移動しProfileをインストールします。

<img width="414" alt="IMG_0643.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/00baacaf-5047-1123-4497-75af29981f33.png">

ProfileをインストールするとApp Distributionのアプリが追加させていることが確認できます。

<img width="414" alt="IMG_0646.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/2038853a-76fb-eace-3dd1-ab975a679f06.png">

アプリをタップすると配信したVersionsの一覧が表示されるので任意のVersionをタップしアプリをダウンロードします。

<img width="414" alt="IMG_0645.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/9b7b5c87-27ed-02fe-00d4-b4616d8e15aa.png">

アプリがダウンロードできてるのを確認できましたね！
<img width="414" alt="IMG_0647.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292456/ea7be174-8048-17f3-6041-5d3260eceb50.png">

# 最後に

今回はiOSをアプリを手動で配布する方法について紹介しましたが、FastlaneとFirebaseCLIでアップロードを行うと配布を自動化することができるので、次はFastlaneでの配信方法を紹介したいと思います🎣

#### 追記: 2020/02/14
https://qiita.com/yum_fishing/items/35376b574b7560561a3d でAdHoc自動化の記事を書きました。

公式: https://firebase.google.com/docs/app-distribution/ios/distribute-console?authuser=2