Skip to content

ユーザのアップグレード

自社アプリ側でゲストユーザを作成し、その後着せ替えアプリと接続して正規ユーザになることを、アップグレードと呼びます。アップグレード時には、ゲストユーザの所持アイテムが正規ユーザに引き継がれます。正規ユーザは、Avatar Play で認証済みのユーザとして扱われ、アバターと所持アイテムをアプリ間で共有して利用できるようになります。

Unity SDK での挙動

Unity SDK では、アップグレードは自動的に処理されます。着せ替えアプリと接続するフローの最終工程で、自社アプリに戻って InitializeAsync を呼び出したときにアップグレードが実行されます。

RESTful API での挙動

RESTful API では、ゲストユーザのアバターIDを明示的に指定してConnectUrl APIを呼び出す必要があります。着せ替えアプリと接続するフローの最終工程で、自社アプリに戻ってAccessToken APIを呼び出したときにアップグレードが実行されます。

アップグレード済みのゲストユーザの扱い

連携処理が最終工程で失敗するケースを考慮し、アップグレード後もゲストユーザのアバターIDは利用可能にしています。ただし、アイテムを付与することはできません(アイテム付与APIを呼び出してもエラーが返ります)。連携処理の失敗を検知した後は、速やかに再度連携するようユーザーに促してください。

1ユーザの1アプリに対するアップグレード回数制限

アップグレード時にゲストユーザの所持アイテムを引き継げる仕様であるため、アプリのインストール・アンインストールを繰り返すことで、ゲストユーザ時に得たアイテムを一つの正規ユーザに集約できてしまいます。一方で、アップグレードを1ユーザ1度きりに限定してしまうと、何らかしらの理由で前のユーザにログインできなくなり新規登録から始めることになった際に、前のアバターに復帰できなくなるリスクがあります。

この問題に対処するために、1ユーザの1アプリに対するアップグレード回数を制限することを可能にしています。デフォルトでは10が設定されていますが、アプリ毎に変更可能です。