Unity iOS・Android課金設定・実機テスト課金の覚書

## iOS

■Apple Developer Program

　・AppID作成（バンドルIDのワイルドカード不可）
　・Provisioning作成（Distribution）

■iTunesConnect

　・アプリの登録（AppID作成時のバンドルIDを設定）
　・「機能」の「App内課金」から商品登録
　　　▼参照名は何でも良い
　　　▼製品ID：サーバーと連携する必要があるので一意で管理しやすい名前
　　　▼価格：自由に・・・上流工程判断かも
　　　▼表示名：自由にわかりやすく・・・上流工程判断かも
　　　▼説明：自由に自由にわかりやすく・・・上流工程判断かも


## Android

■Google Developer Console

　・アプリの登録
　・リリース管理にAPKを登録（150Mを超える場合はOBBファイルにする必要あり）

　　https://docs.unity3d.com/Manual/android-OBBsupport.html
　　https://support.google.com/googleplay/android-developer/answer/2481797?hl=ja

　　**下記のパーミッション設定はいらなくなったとの事、**
　　Google Play Billing Library 1.0 リリース（2017-09-19、発表）
　　https://developer.android.com/google/play/billing/release-notes#release-1_0
　　~~課金のパーミッションが設定されたAPKでないとアイテム登録できないので注意~~
　　下記の記述は必要ないです。

```
　 <uses-permission android:name="com.android.vending.BILLING" /> 
```

  ・テスターの登録
　　　すべてのアプリの「設定」→「テスターの管理」からテスターを登録しておく
　　　リリース管理→アプリのリリース→編集あたりからテスター選択
　　　※テスターが選択されてないとリリースできない

　・ストアでの表示→ストアの掲載情報
　　アスタリスク（*）がついてる項目はすべて設定する必要がある
　　▼コンテンツのレーティング
　　▼価格と配布
　　▼スクリーンショット 
　　　▼高解像度アイコン
　　　▼ヘッダー画像
　　　▼各２つの項目のスクリーンショット
　　　　電話・タブレット
　　▼分類
　　▼プライバシー ポリシー
　　▼アプリ内サービス
　　　ここにアイテムを登録

　・pemファイル作成
　　これをサーバーに渡す必要あり
　　▼Google Play Developer ConsoleのサービスとAPIのページに移動し、RSA公開鍵の文字列をコピーする。
　　　https://support.google.com/googleplay/android-developer/answer/186113?hl=ja

　　▼コピーしたRSA公開鍵の文字列を貼り付けたファイル、XXXXを作成する。

```
Windows用コマンド（コマンドプロンプト）

$ certutil -f -decode XXXX YYYY.der
$ openssl rsa -inform DER -outform PEM -pubin -in YYYY.der -out ZZZZ.pem
 

Mac用コマンド（ターミナル）

$ base64 -D XXXX > YYYY.der
$ openssl rsa -inform DER -outform PEM -pubin -in YYYY.der -out ZZZZ.pem
```

## Unity
　**・UnityServicesにログインする事（WebでUnityDashBoardにプロジェクトを作る必要あり）**
　　https://docs.unity3d.com/ja/current/Manual/SettingUpProjectServices.html

　・Unityエディタ上でServicesウィンドウを開く
　　Dashboard上で作ったプロジェクトと連携する必要があるので
　　UnityEditor上のServicesウィンドウでOragnization等を選んで紐づければOK


　・課金処理をよしなに実装
　
　・バンドルID注意
　・**Releaseビルドにする事**

===================================================================================
## テスト課金

　詳しい事は下記、参照。
　とても参考になります。
　https://qiita.com/soratyan/items/91423b9d0d474cb044c7

### ■iOS
　アプリの登録は完了しているものとします。（自分が課金テストできた方法を記載します。）
　
　●**テストアカウントの作成**
　・テスト課金用のメールアドレス(XXX_test@gmail.com)を用意する。
　・テスト課金用のメールアドレスを使ってAppleIDを作成する。
　　　https://appleid.apple.com/account#!&page=create

　　　PCからはこちらから作れます、Iphoneから作成したりiTunesから作成したり
　　　いろんなパターンがあるようなので検索してみてください。

　　　**※登録時の注意点
　　　　秘密の質問１~３を絶対にメモって覚えておいてください。
　　　　次回からログインする時に聞かれます。**

　●**iTunesConnectに登録にテスター登録**

　　・コンプライアンス上画面を見せられないので、
　　　もろもろ画面は探してください。手順だけ書いておきます。

　　▼手順
　　「iTunesConnect」⇒「ユーザーアクセス」⇒「テスター」を選択

　　　１．＋ボタンで追加できるので、＋ボタン押す。

　　　２．下記項目を入力
　　　　　姓、名、メールアドレス、パスワード・パスワードの確認
　　　　　セキュリティ質問、セキュリティ質問の答え
　　　　　生年月日、AppStoreテリトリ（日本選べばいい）

　　　　**●メールアドレスとパスワードに注意
　　　　後で編集する事ができないので、登録して編集することができない
　　　　（※知ってる人がいたら教えてください・・・マジで）
　　　　間違えた場合、削除するしかない・・・・・が
　　　　削除したメールアドレスは２度と登録できないようなので
　　　　メールアドレスを作り直すところからやり直すしかない

　　　　なので必ずスクショとりましょう。
　　　　**

　●**実機確認**
　　　　1.現在iPhoneに設定されているAppleIDをサインアウト、
　　　　2.アプリでテスト課金の画面に来た時、購入ボタンを押す
　　　　3.AppleIDを聞かれるので「既存のAppleID」を選んで
　　　　　「テスターに登録したAppleID」と「パスワード」を入力してください。  
　　　　　
### ■Android
　アプリのα版登録は完了しているものとします。（自分が課金テストできた方法を記載します。）

　　・コンプライアンス上画面を見せられないので、
　　　もろもろ画面は探してください。手順だけ書いておきます。

　●**テストアカウントの作成**
　・テスト課金用のメールアドレス(XXX_test@gmail.com)を用意する。

　●Google Play Developer Console の設定

　　・Google Play Developer Console にログイン
　　・設定をクリックして、下記メッセージのところにある

**ライセンス テスト
このコンソールの所有者に加え、
以下のユーザーにもアプリからのライセンス テスト応答が届きます。 
テスト アカウントの上限は 400 個です。
テスト用のアクセス権がある Gmail アカウント」**

　・・に上記のテストメールアドレスを追加してください

　●リリース側のテスター設定
　　・自分が開発したアプリを選択し、「リリース管理」の「アプリリリース」を選択
　　・アルファ版の欄にある管理をクリック
　　・テスターの管理という欄があるので▽を押して展開する。
　　・テストリストに作成したテストアカウントのメールアドレスを追加。
　　・**オプトインURL**をメモっておく

　●オプトインURLからテスターにする
　　Googleにテストアカウントでログインする、
　　先ほどのオプトインURLに遷移する。
　　↓
　　「テスターになる」をクリック

　●**実機確認**
　　　　1.現在Androidの実機に関連付けられている、Googleアカウントを削除する
　　　　2.アカウントの追加よりテストアカウントでログインする。
　　　　3.「Google Play Store」を起動して、アカウント連携されていることを確認
　　　　4.アプリ検索窓からアプリ名を入力して検索
　　　　5.検索にヒットしたらインストール、オプトインURLと紐づいているアカウント以外は
　　　　　ダウンロードもできないし、インストールもできない。