Android
このガイドでは、Hive SDK Androidでの認証機能の設定に関する手順を提供します。
機能を追加¶
モジュールレベルのbuild.gradleファイルに対応する外部ライブラリを追加する必要があります。使用する認証機能のみを追加してください。
以下は、モジュールレベルのbuild.gradleファイルに外部ライブラリを追加する例です。
dependencies {
// Feature-specific settings. Add only the features you are using.
// AuthV4 Device Management
implementation "com.com2us.android.hive:hive-authv4-device-management"
// AuthV4 Google In-App Update
implementation "com.com2us.android.hive:hive-authv4-google-inappupdate"
// AuthV4 Google reCAPTCHA
implementation "com.com2us.android.hive:hive-authv4-google-recaptcha"
// AuthV4 Real Name Verification (China)
implementation "com.com2us.android.hive:hive-authv4-real-name-verification"
}
IdPを追加¶
モジュールレベルのbuild.gradleファイルに外部ライブラリを追加します。使用するIdPのみを追加してください。
以下は、モジュールレベルのbuild.gradleファイルに外部ライブラリを追加する例です。ゲストログイン機能は、ライブラリを追加せずに使用できます。
dependencies {
// IdP-specific settings. Add only the IdPs you are using.
// Apple Login
implementation "com.com2us.android.hive:hive-authv4-provider-apple-signin"
// Facebook Login
implementation "com.com2us.android.hive:hive-authv4-provider-facebook"
// Google Play Games Login
// `hive-authv4-provider-google-playgames` includes the `play-service-games-v2` library.
implementation "com.com2us.android.hive:hive-authv4-provider-google-playgames"
// Google Login
// Google Play Games Login and Google Login are different login methods.
implementation "com.com2us.android.hive:hive-authv4-provider-google-signin"
// Membership Login
implementation "com.com2us.android.hive:hive-authv4-provider-hive-membership"
// Huawei Login
implementation "com.com2us.android.hive:hive-authv4-provider-huawei"
// LINE Login
// To apply the LINE library, minSdkVersion 24 or higher is required.
implementation "com.com2us.android.hive:hive-authv4-provider-line"
// QQ Login
implementation "com.com2us.android.hive:hive-authv4-provider-qq"
// Steam Login
implementation "com.com2us.android.hive:hive-authv4-provider-steam"
// VK library requires targetSdkVersion 32 or higher.
implementation "com.com2us.android.hive:hive-authv4-provider-vk"
// WeChat Login
implementation "com.com2us.android.hive:hive-authv4-provider-wechat"
// Weverse Login
implementation
// X Login
implementation "com.com2us.android.hive:hive-authv4-provider-x"
// Telegram Login
implementation "com.com2us.android.hive:hive-authv4-provider-telegram"
// Xiaomi Login
implementation "com.com2us.android.hive:hive-authv4-provider-xiaomi-oauth"
}
各IdPのキー値をhive_config.xmlに入力してください¶
各IdPコンソールから取得したキー値をhive_config.xmlに入力してください。詳細については、認証の前提条件を参照してください。
IdPによる追加設定¶
IdPに応じて追加の設定が必要です。
Google Play Games サインイン IdP 設定¶
Google Play Gamesのログインを使用するには、以下のように設定してください。
AndroidManifest.xml の設定¶
これはGoogle Play Servicesの設定です。これはGoogle Play Gamesログイン設定に必要な値です。
<manifest>
<application>
<meta-data android:name="com.google.android.gms.games.APP_ID" android:value="@string/game_services_project_id"/>
</application>
</manifest>
Facebook IdPの設定¶
Facebookログインを使用するには、以下の指示に従ってAndroidManifest.xmlを設定してください。
まず、ゲームアプリでリンク、画像、または動画を共有するためにFacebookContentProviderを設定します。com.facebook.app.FacebookContentProviderのandroid:authorities属性の値としてFacebook AppIDを追加して入力します。Facebook AppIDは、Facebookコンソールに登録されたゲームアプリのアプリIDで見つけることができます。
例: FacebookAppIDが123456789のとき
<provider android:authorities="com.facebook.app.FacebookContentProvider123456789"
android:name="com.facebook.FacebookContentProvider"
android:exported="true"/>
Warning
Facebookシェアリングを有効にするために、FacebookContentProviderの権限を宣言すると、マーケット固有のAndroidビルド(例:Google Playストア、ONEストア)の同時インストールが防止されます。
Facebookシェアリングを使用していない場合は、FacebookContentProviderの権限の宣言を削除するためにトラブルシューティングガイドを参照してください。
Facebook AppIdとクライアントトークンの設定を追加します(Facebook v13以降に必要)。Facebookクライアントトークンについては、Facebookコンソールのアプリ設定 > 高度な設定を参照してください。
例: FacebookAppIDが123456789のとき
例: Facebookクライアントトークンが123456789のとき
Note
FacebookのAppIdとクライアントトークンをstring.xmlファイルに設定することもできます。この場合、android:valueを設定する際にfbプレフィックスは必要ありません。詳細についてはこちらを確認してください。
QQ/WeChat IdP 設定¶
QQまたはWeChat IdPをサポートしている場合は、以下の追加コンテンツを適用してください。
モジュールレベルのbuild.gradleファイルでlibsフォルダーの依存関係を設定します。
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation fileTree(include: ['*.aar'], dir: 'libs')
}
SDK配布バージョンのモジュールレベルlibsフォルダー(.aar/.jar)から外部ライブラリを追加します。配布バージョンに含まれる外部ライブラリのリストは以下の通りです。
- mid-sdk-2.10.jar (QQ IdPログインをサポートする際にこのファイルを追加してください)
- mta-sdk-2.0.0.jar (QQまたはWeChat IdPログインをサポートする際にこのファイルを追加してください)
- open_sdk_3.5.4.11_r3f56456_lite.jar (QQ IdPログインをサポートする際にこのファイルを追加してください)
Huawei IdPの構成¶
- agconnect-services.jsonを追加します
- Huaweiコンソールからダウンロードしたagconnect-services.jsonファイルをプロジェクトフォルダに追加します。
- プロジェクトの設定 - build.gradleファイル
- AppGallery ConnectプラグインとMavenアドレスを追加します。
buildscript { repositories { google() jcenter() // Huawei HMS Core SDK. maven {url 'https://developer.huawei.com/repo/'} } dependencies { ... // Huawei AppGallery Connectプラグイン classpath 'com.huawei.agconnect:agcp:1.9.1.301' } } allprojects { repositories { google() jcenter() /// Huawei HMS Core SDK. maven {url 'https://developer.huawei.com/repo/'} } }
- AppGallery ConnectプラグインとMavenアドレスを追加します。
- アプリの設定 - build.gradleファイル
- Huawei認証ライブラリとプラグインを追加します。
VK IdPの設定¶
VKログインを使用するには、以下のように設定してください。
androidmanifest.xml の設定¶
VKログインリダイレクションに必要な設定。
<manifest>
<application>
<activity
android:name="com.hive.authv4.provider.vk.HiveProviderVkActivity"
android:configChanges="colorMode|density|keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|locale|fontScale|layoutDirection"
android:exported="true"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="vk${vkClientId}" />
<data android:host="vk.com" />
</intent-filter>
</activity>
</application>
</manifest>
Xiaomi IdP 設定¶
Xiaomiログインを使用するには、Xiaomiコンソールから取得したXiaomiAppIdとXiaomiAppKeyを設定する必要があります。
AndroidManifest.xml の設定¶
<meta-data
android:name="miGameAppId"
android:value="${xiaomiAppId}" />
<meta-data
android:name="miGameAppKey"
android:value="${xiaomiAppKey}" />
<!-- user OAID -->
<meta-data
android:name="miGameEnhance"
android:value="false" />
Settings.gradleのMaven構成¶
maven {
url "https://repos.xiaomi.com/maven"
credentials {
username 'mi-gamesdk'
password 'AKCp8mYeLuhuaGj6bK1XK7t2w4CsPuGwg6GpQdZ9cat7K59y5sD7Tx3dHjJcFrBGj3TQ4vi7g'
}
}

