目次
- はじめに
- 前提
- 環境
- 実施したこと
- App ID作成
- 証明書の設定
- AppStoreConnectへの登録
- 最後に
- 参考
1.はじめに
iOSエンジニアなのにiOSアプリをAppStoreに公開する方法を知らなかったので、どんなことをやる必要があるのか、実際に調べて、試してみました!
この記事では、AppStoreConnectに登録するまでに実施したことを紹介します。
公開までの大まかな流れ
- AppStoreConnectに登録
- AppStoreに申請
- AppStoreに公開
- 申請が通ると、AppStoreに公開可能となる
そもそもAppStoreConnectとは?
AppStoreConnectとは、Appleが提供しているアプリの管理や申請を行うためのツールです。
アプリの名前や製造者名などを登録して申請することで、AppStoreに公開しても問題ないか確認することができます。
申請だけではなく、アプリの価格や年齢制限などの管理も行えます。
2.前提
以下は完了している前提で紹介します。
-
Apple Developer Programに登録(年間99ドルかかります)
- Webページからの登録すると失敗するという記事を見かけたので、アプリから登録した方が良いかもしれません。
-
Xcodeのダウンロード
- Xcodeとは、Appleが提供しているAppleプラットフォーム向けの統合開発環境(IDE)です。Appleプラットフォーム(iPhone,iPad,Apple Vision Proなど)向けのアプリケーションを作成する際にはXcodeが必要になります。
-
配信するアプリの作成
3.環境
- 実施環境
- macOS:Sonoma 14.6 (23G80)
- Xcode:15.2 (15C500b)
- 必須環境(2024年9月時点)
- macOS:Ventura 13.5以上
- Xcode:15.0以上
- 2024年9月時点では、AppStoreに公開するにはXcode15.0以降のバージョンが必須です。macOSバージョンによって使用できるXcodeのバージョンが異なり、15.0を使用するためにはmacOSのバージョンがVentura 13.5以上であることが必須です。
-
こちらから引用
2024年4月より、App Storeに提出するiOSアプリとiPadOSアプリはすべて、Xcode 15以降およびiOS 17以降のSDKでビルドする必要があります。
4.実施したこと
2024年9月時点での検証内容です。
1. App ID作成
- safariでApple Developerにログインする
- Certificates, Identifiers & Profiles > Identifiersを選択し「+」ボタンを押下する
- App IDsを選択しContinueボタンを押下する
- Select a typeはAppを選択し、Continueボタンを押下する
- 通常のアプリを配信するためAppClipではなく、Appを選択
- AppClipとは
- 通常のアプリを配信するためAppClipではなく、Appを選択
- DescriptionにApp IDの説明を入力する(例:sample App)
- 記載内容はStoreに公開されないが、自分がアプリを識別できるような情報を入力する
- Bundle IDを設定する
- Explicitを選択する
- 基本的にはExplicitだが、Push通知などの機能を使用せずID定義の手間を減らしたいのであればWildcardを選択する
- Explicitを選択する
- Bundle IDを入力
- App ID作成後は変更できないため注意
- 逆ドメイン名スタイルの文字列 (com.domainname.appname) で作ることが推奨されているので、それに沿って作成するのが吉(これを見ずに作成し、作り直しが地味に手間だった)
- アプリ作成時に設定したBundle IDを入力する
- App ID作成後は変更できないため注意
- Capabilities一覧の中にアプリで使用した機能があれば、チェックを入れる
- Continueボタン押下後、Registerボタンを押下する
2. 証明書の設定
- Xcodeでプロジェクトを開く
- Xcodeのコンテントエリアから作成したアプリを選択し、TARGETS欄から作成したアプリを選択
- 上部バーの「Signing&Capabillities」を選択し、Profileを設定する
- Profileを用意する場合、Provisioning ProfileにそのProfileを設定する
- 用意しない場合、Automatically manage signingにチェックを入れる(今回はこちらを設定した)
- TeamsにAppleDevelopperに登録したアカウントの法人名 or 個人名を選択
- AppleDevelopperにログインし、メンバーシップの詳細から確認できる
- Bundle Identifierの欄にApp ID作成時に設定したBundle IDを入力する
3. AppStoreConnectへの登録
- WebブラウザでAppStoreConnectにログインする
- アプリを選択後「+」ボタンを押下し「新規アプリ」を選択
- 配信するプラットフォーム、名前、プライマリ言語、BundleID、SKU、ユーザーアクセスの可否を入力
- プライマリ言語について
- ローカライズされていない言語のAppStoreで開かれた際に、デフォルトで表示する言語の設定
- 登録したAppを選択 > 左メニューの「アプリ情報」>「ローカライズ可能な情報」の言語が表示されているプルダウンを表示し、言語横に表示されている「+」を押下することで追加可能
- ローカライズされていない言語のAppStoreで開かれた際に、デフォルトで表示する言語の設定
- ユーザーアクセスについて
- アプリの情報を閲覧できるかどうか、制限をかけることが可能。しかし、Admin、Finance、Access to Reportsの権限のメンバーには制限をかけることができない。
- AppStoreConnectに登録したアプリを削除するにはAdmin以上の権限がないとできないため、自身の権限がAdmin未満かどうか注意
- プライマリ言語について
5.最後に
このあとは、アプリの一般情報(画面のスクショなど)を登録してAppStoreに申請という流れになります。
実際にAppStoreの公開まで完了したら、また記事書こうと思っています。
今後公開されましたら、是非そちらもよろしくお願いします!