認証の使い方¶
このページでは、Hive SDK 4.3.0から利用可能な新しい認証システムである認証を紹介します。認証は、SDKの初期化からログインまでの一連のプロセスを管理します。
Note
ゲームをAuthentication v1で開発したい場合は、Authentication v1メニューを使用したSDK v4での開発を参照してください。
構成¶
認証は三つのステップで構成されています。
- SDKの初期化
- SDKを初期化した後、SDKが提供するすべての機能を使用できます。
- 初期化フェーズでは、利用規約や更新/通知ポップアップが表示されます。
- 初期化フェーズでは、Androidベースのデバイスのみで権限ポップアップが表示されます。
- ゲームサーバー選択メニューとメンテナンスポップアップの表示
- SDKの初期化後、ユーザーにゲームサーバー選択メニューを提供します。
- ゲームサーバーの選択後にサーバーメンテナンスポップアップを表示します。
- サインイン
- メンバーシップおよび多様なID プロバイダー(IdP)を通じてゲームにサインインすることができます。
機能¶
- 認証は、IdP(アイデンティティプロバイダー)に対して柔軟に適用でき、Apple Game Center、Google Play Games、およびFacebookなどが含まれます。
- Facebookなどのソーシャルメディアアカウントでのサインインが、メンバーシップに関係なく利用可能です。
- ユーザーのデバイスに設定されたApple Game CenterまたはGoogle Play Gamesアカウントを使用して、暗黙のログインが可能です。
- 認証およびサインイン手続きのためのカスタマイズされたUIをサポートします。
- 必要に応じて、SDKが提供するUIを使用するのではなく、ゲームのコンセプトに従って、指定されたAPIを使用して新しいUIを設計します。
- 分散サーバーを通じて安定したサインインをサポートします。
- ユーザーは、韓国以外に分散されたサーバーを使用することで、国際インターネット回線に問題がある場合やHiveサーバーが故障している場合でもゲームにログインできます。
AuthV4.Helper¶
認証は、ログイン機能をより簡単かつ迅速に実装できるようにするためにAuthV4.Helperを提供します。
- アップグレードされたAPIを見つけることができます。これは、ゲームを実行するためのアカウントと、ユーザーのデバイスでサインインするためのアカウントを比較します。
- デバイス上のGoogle Play GamesまたはApple Game Centerのアカウントは、PlayerIDと同期されたアカウントと比較されます。
- ゲームからデータを確認する必要はありません。SDKファイルを見てください。
- 適切なIDプロバイダー(IdP)は、国データを検証することによって表示されます。 (例:国情報が中国(CN)の場合、ゲストアカウントはIdPリストから隠されます。)
- 適切なIdPは、デバイスのOSタイプを特定することによって表示されます。 (例:デバイスのOSタイプがGoogleに基づいていて、国情報が中国(CN)の場合、Google Play GamesはIdPリストから隠されます。)
- SDKとの同期のための簡略化されたガイドラインを実行できます。
- ガイドラインに従うためにHiveサーバーAPIで不要に実装されている部分は排除されます。
- この更新により、HiveサーバーAPIを使用するよりも理解しやすく、実装しやすくなります。
利用可能なプロバイダー¶
以前に説明したように、 認証はユーザーをIdPで確認します。ユーザーは以前に同期されたIdPを使用するか、サインインアカウントにリンクするために他のものを選択できます。提供されたIdPはゲームによって異なる設定が可能であり、Hiveプラットフォームはユーザーの国情報に応じて適切なIdPをユーザーに提供します。
認証で提供されるIdP¶
| IdP | 説明 | エクスポージャ条件 / サポートされているバージョン |
|---|---|---|
| メンバーシップ | メンバーシップアカウントのメールとパスワードでユーザーを認証 | 特別な条件なし |
| Facebookアカウントで認証 | ユーザーの国が中国(CN)の場合は表示されません | |
| Google Play Games | Google Play Gamesプロファイルアカウントで認証(Googleログインとは異なる) | Androidのみ。ユーザーの国が中国の場合は表示されません |
| Googleメールアカウントで認証(Android以外のiOSや他のプラットフォームをサポート) | ユーザーの国が中国の場合は表示されません。Androidでは、GoogleとGoogle Play Gamesは同時に表示されることがあり、アイコンで区別されます: ![]() | |
| Game Center | Apple Game Centerアカウントで認証 | iOSでのみ表示されます |
| Tencent QQアカウントで認証 | ユーザーの国が中国であるか、ゲームの言語が簡体字中国語の場合にのみ表示されます。QQログインはHive SDK 4.5.0からサポートされています | |
| VK | VKアカウントで認証 | ゲームの言語がロシア語の場合にのみ表示されます。ユーザーの国が中国の場合は表示されません。VKログインはHive SDK 4.6.0からサポートされています |
| WeChatアカウントで認証 | ユーザーの国が中国であるか、ゲームの言語が簡体字中国語の場合にのみ表示されます。WeChatログインはHive SDK 4.6.0からサポートされています | |
| Apple | Appleアカウントで認証 | iOS 13以上で表示されます。AppleログインはHive SDK 4.11.7.3からサポートされています |
| Appleでサインイン | AndroidでAppleアカウントで認証 | Android API 21以上でサポートされています。Hive SDK 4.15.6からサポートされています |
| LINE | LINEアカウントで認証 | Android SDK 17およびiOS 10以上で表示されます。LINEログインはHive SDK 4.14.0からサポートされています |
| Weverse | Weverseアカウントで認証 | iOS 12以上で表示されます。WeverseログインはHive SDK 4.15.2からサポートされています |
| Huawei | Huaweiアカウントで認証 | Androidのみで表示されます。HuaweiログインはHive SDK 4.16.2からサポートされています |
| X | Xアカウントで認証 | XログインはHive SDK 4.24.5からサポートします |
| Steam | Steamアカウントで認証 | SteamログインはHive SDK 4.24.5からサポートします |
| Telegram | Telegramアカウントで認証 | TelegramログインはHive SDK 4.25.0からサポートします |
| XIAOMI | XIAOMIアカウントで認証 | Androidでのみ表示。XIAOMIログインはHive SDK 4.25.5.1からサポートします |
| Funtap | Funtapアカウントで認証 | ベトナムFuntap Appraisal Build専用。FuntapログインはHive SDK 4.26.2からサポートします |
ユーザー識別子¶
認証において、PlayerIDはユーザーを特定するためのユニークなキーです。 PlayerIDには以下の特徴があります:
- さまざまなIdPと同期するために利用可能です。
- 1つのPlayerIDは、1つのIdPのユーザーIDを1つ以上持つことはできません。
- 1つのIdPのユーザーIDは、同じゲーム内で複数のPlayerIDとリンクすることはできません。
- 同じIdPアカウントであっても、ゲームごとに異なるPlayerIDが発行されます。
- 認証によって提供されたIdPと同期していないユーザーはゲストユーザーです。
PlayerID の例¶
| NO | プレイヤーID | ゲーム | メンバーシップ | Google Play ゲーム | ゲームセンター | |
| 1 | 10001 | A | X | F10000 | G10000 | A10000 |
| 2 | 10002 | A | H10000 | X | G20000 | X |
| 3 | 20001 | B | H10000 | X | X | X |
| 4 | 20003 | B | X | X | X | X |
- ユーザー番号1は、PlayerIDを3つのIdPと同期します; Facebook、Google、Play Games、およびApple Game Center。
- ユーザー番号1と2は、異なる2つのユーザーIDのGoogle Play Gamesから、1つのゲームの各PlayerIDを同期します。
- ユーザー番号2と3は、異なる2つのゲームのPlayerIDで同じメンバーシップアカウントを同期します。
- ユーザー番号4は、IdPのいずれとも同期していないゲストユーザーです。
