App Store Connect アプリをリリースする - shirajira/family-account-ios GitHub Wiki
App Store Connect アプリをリリースする
本稿では iOS アプリに特化した内容について説明する。
tvOS や macOS アプリを配信したい場合,適宜読み替えてください。
概要
開発したアプリは App Store を通じて全世界に配信することができる。
アプリの配信管理は App Store Connect から行う。
App Store Connect
App Store Connect のリソースにアクセスするには Apple Developer Program に加入する必要がある。
Apple Developer Program - Apple Developer
年会費は日本円で 11,800 円+消費税。
どうせなら赤字にならないようなビジネスモデルを考えましょう。
審査
提出したアプリは Apple による一定の審査のあとに公開される。
アプリの審査はガイドラインに従って客観的に行われる。
App Store Review ガイドライン - Apple Developer
みなさんご存知の通り,審査は少々厳しい。
審査対象は「App Store に掲載する情報すべて」であるため,アプリがバグなく動けばいいという問題でもない。
ただし,リジェクトされたとしても
ガイドラインの〜に抵触しています。これを修正するには…
という具合に次の手順までしっかり案内してくれるので,結構親切。
安心してどんどん提出しよう。
なお,一連のやりとりはすべて英語で行われる。
英語苦手マンは要注意。
操作手順
以降の手順では,手動で審査に提出する方法について述べる。
0. 準備するもの
- Apple Developer Program に登録済みの Apple ID
- 配信したいアプリのプロジェクト一式
- Xcode
- キーチェーンアクセス
また,App Store に掲載するアセットとして以下が必要になる。
事前に準備しておくとスムースでしょう。
アプリのアイコン
サイズは 1024x1024 ピクセル。
アプリの Assets.xcassets
に登録の上,Build Settings -> Asset Catalog App Icon Set Name で指定しておく。
アプリの説明に使用するスクリーンショット
配信するプラットフォームごとに指定のサイズの画像を用意する。
横向きの画像も指定可能。
端末 | 画面サイズ | 解像度 [ピクセル] |
---|---|---|
iPhone | 5.5 インチ | 1242x2208 |
iPhone | 6.5 インチ | 1242x2688 |
iPad | 12.9 インチ | 2048x2732 |
アプリのスクリーンショットをそのまま載せてもよいし,サイズが合っていればアプリの使用感が伝わるような装飾を加えてもよい。
ただし,このスクリーンショットも審査の対象となることに注意。
プライバシーポリシー
アプリを介して収集されたユーザデータをどのように扱うのかを明記した Web ページ。
Web ページの URL を記載しなければならないので人によっては準備に少々時間がかかる。
筆者はプライバシーポリシーを記載した HTML ファイルを AWS の S3 バケットに格納し,CloudFront 経由で公開することが多い。
Family Account では,プライバシーポリシーを PRIVACY.md
に記載して GitHub のリポジトリに公開し,その URL を設定した。(これで審査通りました)
たとえユーザデータを収集しないアプリであっても提出必須。
App Store はダウンロード数やクラッシュ数などの情報を取得しているし,メールでの問い合わせなどでユーザから何らかの情報を受け取ることもあるからである。
内容について細かい指摘はされないが,虚偽の記述がないように注意してください。
利用規約
無料アプリでは任意だが,有料アプリやアプリ内課金を実装した無料アプリを配信する場合は必須。
「規約はユーザとサービス提供者の間に結ばれる」ということを明記し,Apple は規約に関与していないことを明らかにする必要がある。
内容について細かい指摘はされないが,対ユーザとの規約になるので弁護士や法務部とよく相談して作成すること。
1. 証明書(Certificate)を作成する
すでに作成済みの場合はスキップしてOK。
キーチェーンアクセスを起動し,メニューバー -> 証明書アシスタント -> 認証局に証明書を要求... まで進む。
証明書に関する情報の入力を求められるので,以下のように入力していく。
- ユーザのメールアドレス: 自分のメールアドレス
- 通称: 自分の名前またはニックネーム
- CA のメールアドレス: 空欄
- 要求の処理: ディスクに保存
次に Apple Developer にサインインし,Certificates, Identifiers & Profiles -> Certificates -> Create a New Certificate まで進む。
いろいろな選択肢があるが,配信を目的とするのであれば Software の Apple Distribution または iOS Distribution (App Store and Ad Hoc) を選択する。
とりあえず前者を選んでおけば問題ないが,Xcode が 11 未満の人は後者を選択すること。
次のページでは,先ほどディスクに保存した証明書をアップロードする。
その次のページでは正式な証明書がダウンロード可能になるので,任意のディレクトリに保存する。
保存したらそのファイルをダブルクリックし,キーチェーンに登録しておいてください。
Expiration Date に記載の通り,有効期限は一年間である。
一年後にはまた同様の手順で証明書を再作成する必要がある。
筆者は Apple Distribution の他に Apple Development の証明書も作成していたようである。
活用されているのかは知らない。
2. App ID を作成する
Certificates, Identifiers & Profiles -> Identifiers -> Register a new identifier まで進み,App IDs を選択する。
次ページの Select a type は該当するほうを選択する。
Register an App ID では,これから公開するアプリの情報を入力していく。
- Description: アプリの概要を入力(管理用なのでなんでもいい)
- Bundle ID: Explicit を選択し,アプリの Bundle ID を正確に入力
Capabilities には,そのアプリがどんな機能を有するかを明示的に指定する必要がある。
実装しているのにチェックが入っていないなどが発覚するとリジェクトされるかも。
すべて入力したら Register で App ID を登録する。
3. Provisioning Profile を作成する
Certificates, Identifiers & Profiles -> Profiles -> Register a New Provisioning Profile まで進み,Distribution: App Store を選択する。
次ページでは 2 で作成した App ID をプルダウンから選択する。
さらにその次のページでは 1 で作成した Certificate を選択する。
最終ページでは Provisioning Profile Name を入力し,Provisioning Profile をダウンロードする。
ダウンロードしたファイルをダブルクリックして Xcode に紐づければ完了。
4. アプリ情報を作成する
Apple Developer にサインインし,App Store Connect を開く。
マイ App -> App -> 新規 App を開き,アプリの基本情報を入力していく。
- プラットフォーム: iOS を選択
- 名前: アプリの名称(30文字まで)を入力
- プライマリ言語: 第一言語を選択
- バンドル ID: プルダウンから選択
- SKU: 管理 ID のようなもの
- ユーザアクセス: いずれかを選択
補足
アプリの名前はユニークである必要がある。
プライマリ言語は全世界に配信するのであれば英語を設定したほうがよいが,日本でしか配信しないのであれば日本語でもOK。
SKU は型番とか品番とかそんなイメージ。普通の企業であれば輸出管理などで使用すると思うが,不要であれば適当な文字列でOK。
無事に初期登録が済んだら,アプリの情報を順次入力してもよいし,それは後回しにして次の手順に進んでもよい。
本稿では,アプリ情報の入力は後回しにする手順で説明する。
5. アプリをアップロードする
Xcode で当該アプリを開く。
まず,Archive 時の Build Configuration が Release になっていることを確認してください。
-> Xcode プロジェクト基本設定#アーカイブ設定
実行デバイスを Any iOS Device に変更した上で メニューバー -> Product -> Archive を実行する。
ビルドに成功すると提出用のウィンドウが立ち上がってくるので,まずは Validate App を実行。
途中の選択肢はすべてデフォルトでOK。1〜4 の手順を正しく行えているのであれば特に問題なく進むはずである。
Validate が成功したら,次は Distribute App を実行する。
こちらの選択肢もすべてデフォルトでOK。
すべての処理が正常に終わると,アプリが App Store Connect にアップロードされる。
なお,アップロードしたアプリが App Store Connect から参照可能になるまでには少々かかる。
準備が完了するとメールで通知してくれるので,待ち時間に次の手順を進めていくとよいでしょう。
6. アプリの基本情報を入力する
あとは App Store Connect の左メニュー,一般 グループの
- App 情報
- 価格および配信状況
- App のプライバシー
を順次入力していく。
ここで虚偽の情報を記載すると容赦なくリジェクトされるので正直に書くこと。
プライマリ言語を英語にした場合は英語で記載する。
言語を追加するには,「ローカライズされていない」から対象となる言語を選択して追加する。
選択した言語が「ローカライズ済み」に移動すればOK。
なお,ここに記載した情報をアプリ公開後に変更する場合,新しいバージョンのアプリと一緒に再提出する必要がある。
情報だけ変更することはできないので注意すること。
7. アプリのプロモーション情報を入力する
左メニュー iOS App の 1.0 提出準備中 を開く。
ここではアプリのプロモーションに関する情報を入力していく。
ビルド のところに + マークが表示されていれば,5 の手順でアップロードしたアプリが参照可能になっている。
当該アプリを選択すると,アイコンなどのアセットが読み込まれるはずである。
すべての情報の入力が終わったら,保存して審査へ提出しましょう。
提出してから審査が始まるまでの間,一部の情報は編集可能です。
おつかれさまでした。
通常,1〜3 営業日以内には結果が返ってくると思います。
リジェクトされた場合
提出した情報に不備がある場合,リリース作業は中断される。
Apple のレビューチームから Next Step についての案内があるので,その案内に従ってレビューを継続すればまったく問題ない。
指摘がよくわからない,または不服や異議がある場合,レビューチームにメッセージを送信することもできる。(もちろん英語で)
アプリのバイナリに不備がある場合
アプリを修正し,5 の手順からやり直す。
このときアプリのバージョンを上げる必要はないが,ビルド番号を上げる必要がある。
初回は 1.0.0 (1) であると思われるが,修正版に設定すべきバージョン情報は 1.0.0 (2) になる。
括弧内のビルド番号は App Store には掲載されないのでご安心ください。