iOS Certificate作成から ipaファイルをアップ app storeで公開

iOS Certificateを作成します。

アプリケーション

 ユーティリティ

キーチェーンアクセス

キーチェーンアクセスの環境設定

このように設定する

認証局に証明書を要求

メールアドレスを登録し証明書を要求する。

デスクトップに保存する

鍵サイズは、2048ビット

SafariでApple Developerにアクセスする

配布用として作成するためAdd Store Ad Hocを選択する

先程作成したcsrファイルを要求されます。

csrファイルを選択します

証明書の準備ができたと表示されるのでダウンロードします。

ios_distribution.cerをキーチェーンに登録します。ダブルクリックで登録できます。

Xcodeをインストールしておきます。

Application Loader を起動します。

appをデリバリにて、ipaファイルを選択します。

送信ボタンを押すとアップロードが完了します。ここでエラーが出る場合があります。組みこんであるアイコンファイルにサイズや、透過設定の規定があり、これを満たしていないとアップロードで失敗するか、アップロードはできても Apple Developperには反映されず、Issueをcorrectしなさいって感じのエラーメールが帰ってきます。

iTunes Connect: Your app “サンプルアプリ” (Apple ID: *********) has one or more issues

Dear developer,

We have discovered one or more issues with your recent delivery for “サンプルアプリ”. To process your delivery, the following issues must be corrected:

Invalid Image Path – No image found at the path referenced under key “CFBundleIconFiles”: Default-667h@2x.png

Invalid Image Path – No image found at the path referenced under key “CFBundleIconFiles”: Default-736h@3x.png

Once these issues have been corrected, you can then redeliver the corrected binary.

Regards,

The App Store team

所定の画像を修正しもう一度トライ!すると、次にはこんなメールが届きました。issueと書いてあったので、また問題なのか?と思ったけど、証明書としては「Push通知」できる事になっているが、アプリケーションにその機能が無いようだ。という意味の文章のようです。特に対処する必要はなく、これで次の段階に進めます。

Dear developer,

We have discovered one or more issues with your recent delivery for “サンプルアプリ”. Your delivery was successful, but you may wish to correct the following issues in your next delivery:

Missing Push Notification Entitlement – Your app appears to register with the Apple Push Notification service, but the app signature’s entitlements do not include the “aps-environment” entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the “aps-environment” entitlement. Xcode 8 does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor’s Capabilities pane, or manually add the entitlement to your entitlements file. For more information, see https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html#//apple_ref/doc/uid/TP40008194-CH6-SW1.

After you’ve corrected the issues, you can use Xcode or Application Loader to upload a new binary to iTunes Connect.

Regards,

The App Store team

次はapple developperにアクセスします。

https://developer.apple.com/account/

登録しているアカウントでログインします。

マイAppをクリック

TestFlightで試験します。

iOSアプリの輸出コンプライアンスを提出します。細かい事は良く分からないので、こちらを参考にしました。

https://qiita.com/osamu1203/items/35df25d93e9d12b11222

テストフライト、テスト飛行の事です。

配布する前に事前に自分の端末でテストする事ができます。iPhoneにTestFlightアプリをインストールし、iTunesConnect から、マイappで該当のアプリケーションを選択します。無事に動作する事を確認します。

その後

次に、バージョンまたはプラットフォームをクリックし、必要事項の記入、先ほどApplicationLoaderでアップロードしたアプリを選択して、審査へ提出します。

また、スクリーンショットなどサイズをしっかり合わせてアップしないと、アップする時に蹴られます。

スクリーンショットの仕様はこちらで確認できます。

http://help.apple.com/itunes-connect/developer/#/devd274dd925

審査申請を出した後、3日くらいで審査が完了します。