ここでは、Unity のゲームでアプリ内課金ストアを利用するのに必要な、デジタルレコードと関連を構築する手順を説明します。Unity IAP 課金 API がターゲットとなります。
アプリ内課金 (IAP) は、お金とデジタルプロダクトとを取引する過程です。プラットフォームのストアでは、デジタル製品であるプロダクトを購入することが可能です。プロダクトには、たいてい文字列データタイプの ID と、有効な期間を表すタイプが与えられています。タイプは、subscription、consumable (再購入可能)、non-consumable (1度だけ購入可能) が一般的です。
Windows App Development では、ローカルとリモート両方での Windows ストア クライアントサーバー API テストが可能です。
ここでは、最初にエミュレーターを使用したローカルテストと請求システムのシミュレーションを説明します。それから、アプリを配布する範囲をダイレクトリンクのあるユーザーに制限して行う Windows ストア テストについて触れます。
注意 この説明は、Windows 10 ユニバーサル SDK をターゲットにしています。他の Windows もターゲットにすることができます。
注意 Unity 5.6 以降は IL2CPP Windows ビルドをターゲットにしています。それより古いバージョンの Unity で Windows の IL2CPP に Unity IAP を使用すると、コンパイルエラーが発生します。
Unity IAP を実装するゲームを作成します。Unity IAP 初期化 と Integrating Unity IAP with your game を参照してください。
後で、Microsoft の Windows デベロッパーセンターのダッシュボードで使用するために、手元にゲームのプロダクト ID を控えておきます。
Microsoft では、IAP のローカルテストを行える請求システムのシミュレーションが可能です。これにより、最初の結合テストのための Windows デベロッパーセンターの設定や、アプリケーションを通した Windows ストアとの通信が不要になります。
一時的にアプリケーションのコードを変更して、パブリッシュする前にそのコードを取り除く必要がありますが、ローカルテストの設定は、リモートで行うストアテストに比べ、かなり単純です。
IAP のローカルテスト
Unity IAP を ConfigurationBuilder インスタンスで初期化するコード上で、請求システムのシミュレーションを可能にします。
警告 ストアへ公開する前に課金テストのために変更していたコードを削除してください。そうしないと、IAP を通して実際の課金ができません。
Unity で ユニバーサルWindows プラットフォーム 用にアプリケーションをビルドします。
Visual Studio でアプリケーションを開き、ローカルマシンのターゲットを x86 にして実行します。
IAP をテストします。
請求システムシミュレーションのコードを削除します。
ローカルで基本的な IAP 機能のテストが終わったので、より安心して Windows ストアで作業を始めることができます。このテストでは、システム内で購入できるよう、アプリケーションに必要なすべての IAP が正しく登録されているのを検証します。
IAP と配布をテストするにはWindows デベロッパーセンターを利用し、公開範囲を制限して設定します。ここでは、アプリケーションの公開範囲を、ダイレクトリンクを持つユーザーに限ります。
注意 ストア内でテストするには証明書が必要で、これはテストをするうえで障害になる可能性があります。そのため、Windows ストアでテストを始める前に、ローカル環境でのテストを完了しておくことが大切です。
デベロッパーセンターで 新しいアプリを作成します。
アプリ名を決めます。
Windows ストアで IAP をテストするには、Windows デベロッパーセンターでパブリッシュされたアプリが必要です。Pricing and availability をクリックしてアプリストアの公開を制限し、アプリのダイレクトリンクを持つユーザーのみが使用できるようにします。
“Distribution and visibility (配布と表示)” で、ストアの選択可能な publication behaviors (配布の種類) を参照してください。Hide this app in the Store (このアプリをストア内で非表示にします) を選択します。
ダイレクトリンクを収集します。これは、テスト 用に Windows 10 にアプリをインストールするために使用されます。
認定取得のため、アプリを提出します。
提出を完了するには多くの時間を費やすことがあり、Microsoft の認定プロセスで問題を指摘されることもあります。無事提出を完了するには、それらの問題を解決する必要があります。
料金を無料にしテスト中に金銭の取引が発生しないように設定して、各 IAP を加えます。テストが完了した後で、IAP を望みの料金で再設定し、再配布します。IAP Submissions を参照してください。
新しいアプリの “App overview” ページで Create a new IAP をクリックします。
プロダクト ID を入力します。
タイプ、料金、言語を設定します。
注意 テストの目的で不要な課金を避けるためには、Pricing and availability で free を選択してください。テストを完了したら、一般にリリースする前に各 IAP を適当な料金で更新し再提出します。
タイプを設定するには プロパティー を選択します。
上述で説明したように、Pricing and availability を選択し価格を Free に設定します。
Manage languages を選択しサポートする言語を設定します。
IAP 概要に戻ったら設定した言語を選択します。
タイトル、説明、アイコンを追加します。
認定のために IAP を提出します。
IAP の提出を完了するには多くの時間を費やすことがあり、Microsoft の認定プロセスで問題を指摘されることもあります。無事提出を完了するには、それらの問題を解決する必要があります。
以下の手順は、Windows ストアで可能なベータテストプロセスに準じています。その中には、「ストア検索」機能を使って公開アプリを見つける機能で、アプリケーションがみつからないように制限することも含まれます。 beta testing と targeted distribution を参照してください。
アプリケーションと IAP が両方とも認証を取得していることを確認します。
先に作成したダイレクトリンクを通して、アプリケーションを Windows 10 デバイスにインストールします。
IAP をテストします。
テストが成功した後、IAP を適切な公開料金に設定し、公開範囲の制限を一般公開に変更し、この変更に対する最終的な認証を得るために提出します。
• 2017–05–16 編集レビュー 無しに修正されたページ - ページのフィードバックを残す
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.