iOSアプリ開発:Apple審査提出(2本目)

※個人で管理しているHPに引っ越ししました。
リンク切れ等考慮して本ページは残しておきますが、今後は[HP](https://kittenkitten.net/2016/12/31/ios_dev_apple_judging2/)のほうで更新します。

2本目、無事リジェクトせずリリース出来ました。

※前提として…下記を自分の立場に合わせて読み替えて見てもらえればと思います。
　KittenKitten…開発したサークル名
　KKSlidePuzzle…開発したアプリ名

一番注意しないといけない点は、URLにアクセスする場合Safariを使ってください。
他のブラウザだと失敗する可能性があります。

# Apple Dev Centerでリリース用の準備
下記URLにアクセス

```
https://developer.apple.com/membercenter/index.action
```

## リリース用のApple ID作成
https://developer.apple.com/account/ios/identifier/bundle
Identifiers->App IDsの右上の+
　App ID Description
　　KKSlidePuzzle
　App ID Prefix
　　xxxxxx (Team ID)　※勝手に決まってる
　App ID Suffix
　　Explicit App ID
　　　Bundle ID:com.kittenkitten.kkslidepuzzle
　App Services
　　何もチェックを入れない
　Continue
　Register->Done

## リリース用のProvision Profileを作成
Provisioning Profile右上の+
　DistributionのApp Store->Continue
　AppID:先ほど作ったApp IDのKKSlidePuzzleを選択して、Continue
　前作ったcertificateを((自分の名前)(iOS Distribution))選択して、Continue
　　Profile Name:kk_KKSlidePuzzle_iosDist
　　Continue
　Download
　　kk_KKSlidePuzzle_iosDist.mobileprovisionがDL出来る
　　Done

## Provision ProfileをXcodeに登録
kk_KKSlidePuzzle_iosDist.mobileprovisionをダブルクリック
　Xcode->Preference->Accounts->View Detailsに項目が表示される

## Xcodeプロジェクト設定

### 画像設定
XcodeのAssets.xcassetsがあるので、このAppIconに該当する部分に画像をD&D
　png,rgba,角が丸くなってもok

### アプリ名設定
Xcodeの左ペインからInfo.plist
　Bundle name:${PRODUCT_NAME} -> KKSlidePuzzle

### Code Signing設定
Xcode左ペインからプロジェクトファイル選択、PROJECTのアプリ名->Build Settings->Code SigningのProvisioning Profileを、kk_KKSlidePuzzle_iosDistに変更
Code SigningのCode Signing IdentityをiPhone Distribution: xx xxxxにする。
同じように、TARGETSのアプリ名も設定する。

### Bundle ID設定
Xcode左ペインからInfo.plist選択
　Bundle Identifier
　　$(PRODUCT_BUNDLE_IDENTIFIER)　->　com.kittenkitten.kkslidepuzzle

### アプリ設定
TARGETSのappのGeneral
　Build
　　1.0.0
　Deployment InfoのDevice Orientation
　　Portrait
　　Upside Down
　　　にチェックを入れる
　Status Bar Style
　　Requires full screenにチェックを入れる
TARGETSのappのBuild SettingsのPackaging->Product Bundle Identifier
　com.kittenkitten.app　を　com.kittenkitten.kkslidepuzzle

### ビルド
Xcode->Product->Clean
Xcode->Product->Build

### アーカイブ&アップロード
Xcode->Product->Scheme->Edit Scheme...->ArchiveのBuild ConfigurationをReleaseにしてClose
XcodeのデバイスをiOS SimulatorsではなくDeviceにする。
　※実機転送のように。
Xcode->Product->Archive
　※今回は数分で終わった。
　Validate->xx xxxx(自分の名前)->Choose
　Validation Successfulと出たので、Done
　Update to App Store...->xx xxxx(自分の名前)->Choose
　Successとなった。
　
　もし、既にiTunes Connectにアプリ登録している場合、しばらく待つとビルドに+が表示される。

# iTunes Connect登録
https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa
マイApp->左上の+、新規App
　プラットフォーム：iOS
　名前：KKSlidePuzzle
　プライマリ言語：英語(アメリカ)(国外でもリリースするため
　バンドルID：KKSlidePuzzleの作ったやつ
　SKU：com.kittenkitten.kkslidepuzzle
　作成
すぐに読み込みが出来ないようで、しばらく放置したらマイAppにKKSlidePuzzleが表示された
App情報
　ローカライズ可能な情報
　　名前：KKSlidePuzzle
　　プライバシーポリシーURL：空
　一般情報
　　バンドルID:KKSlidePuzzle - com.kittenkitten.kkslidepuzzle
　　SKU：com.kittenkitten.kkslidepuzzle
　　AppleID:xxxxxxxx(自分で入力しない)
　　プライマリ言語：英語(アメリカ)
　　カテゴリ
　　　プライマリ：ゲーム
　　　　サブカテゴリ(オプション)：パズル
　　　　サブカテゴリ(オプション)：ミュージック
　　　セカンダリ(オプション)：ミュージック
　保存
　英語(アメリカ)を日本語にし、全部確認したら保存。
　　これで、ローカライズした事となる。※基本は英語、日本語で変更する事は無い。
　価格および配信状況
　　価格表
　　　JPY 0(無料)
　　配信可否
　　　すべてのテリトリで配信可能
　　Volume Purchase Program
　　　割引なしで配信可能
　　保存
iOS APP
　1.0提出準備中
　　Appプレビューとスクリーンショット
　　　メディアマネージャー
　　　　下記シミュレータで、それぞれ3枚(タイトル、ゲーム、結果)スクリーンショット(Ctrl+S)撮る
　　　　　iphone6plus　…　5.5インチディスプレイ
　　　　　ipad pro　…　12.9インチディスプレイ
　　　　　※画面上の文言を全て英語にしているため、英語(アメリカ)も日本語も別で用意しなくていいです。
　　　　デバイスのステータスバーは表示しないようAppleに言われるため、背景色で塗り潰す。
　　　　　※自分はGimpで塗り潰しました。
　　　　出来たpngを、該当するサイズにD&D。
　　概要：AppStoreに載る文言。英語(アメリカ)は英語で。
　　キーワード：英語(アメリカ)は英語で。
　　サポートURL：https://twitter.com/kittenkitten00
　　マーケティングURL：空
　　iMessage App：なし
　　Apple Watch：なし
　　ビルド：アップロード済みのものから該当するものを選択
　　App一般情報
　　　Appアイコン：1024x1024のRGBA、角が丸くなってもいいもの
　　　バージョン：1.0.0
　　　年齢制限指定：編集からすべていいえを選び4+
　　　Copyright：2016 Kitten Kitten Inc.
　　　通商代表連絡先情報：チェックを入れない
　　　※下記、前回入力文がそのまま入ってた
　　　　住所(ローマ字)、郵便番号
　　App Reviewに関する情報
　　　連絡先情報
　　　　姓：名前(ローマ字)
　　　　名：苗字(ローマ字)
　　　　電話番号：+81 90 xxxx xxxx
　　　　メール：メールアドレス
　　　　デモアカウントの、このAppのすべての機能が使用できるデモアカウントが必要です。はチェック外す
　　　　メモ：何か伝えておく必要があれば
　　バージョンのリリース：このバージョンを自動的にリリースするを選択
　　保存。
　　日本語にする。
　　　下記以外は、そのまま。
　　　　概要：日本語で。
　　　　キーワード：日本語で。
　　保存。
審査へ提出
　問題があれば、ここでエラーが出るので対応
　輸出コンプライアンス
　　暗号化やってますか：はい
　　米国輸出うんちゃらかんちゃら満たしてますか：はい
　　コンテンツ配信権
　あなたの App は、サードパーティ製のコンテンツを含む、表示する、またはそれにアクセスしますか？
　　はい
　　※広告を使用するため
　あなたは、対象コンテンツに必要なすべての権利を保有しているか、App 配信可能な各 App Store 地域の法律で対象コンテンツの使用権を認められていますか？
　　はい
　　広告ID
この App は広告ID (IDFA) を使用しますか？
　はい
　※広告を使用するため
　この App では下記の目的で広告ID (IDFA) を使用します（該当するすべてを選択）
　　App内で広告を出す
　　　にチェックを入れる
　iOS の「追跡型広告を制限」設定
　　私、(自分の名前)は、この App およびこの App と関わるサードパーティが、広告IDチェックを使用し、ユーザによる iOS での「追跡型広告を制限」の設定を尊重すること、およびこの設定をユーザが有効にした場合、App の広告ID使用を止め、広告ID使用中に取得したすべての情報を iOS Developer Program ライセンス契約で規定されている「限定的な宣伝の目的」以外の目的に一切使用しないことを確認します。
　　　にチェックを入れる
　　　送信

# iTunes Connectでアプリの状態が表示される
下記のような種類があります。
配信準備完了となれば、公開されています。

```
提出準備中
審査待ち
審査中
デベロッパによるリリース待ち
契約保留中
配信準備完了
```

[今回リリースしたアプリ](https://twitter.com/kittenkitten00/status/811945806882217984)