Android
本指南提供了在Android上设置Hive SDK中的身份验证功能的说明。
添加功能¶
您需要添加与模块级 build.gradle 文件对应的外部库。仅添加您将使用的身份验证功能。
以下是将外部库添加到模块级build.gradle文件的示例。
dependencies {
// Feature-specific settings. Add only the features you are using.
// AuthV4 Device Management Service
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"
// Hive 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"
}
在hive_config.xml中输入每个IdP的键值¶
在hive_config.xml中输入从每个IdP控制台获得的密钥值。有关更多详细信息,请参阅身份验证先决条件。
IdP 的附加设置¶
根据身份提供者(IdP)的不同,可能需要额外的配置。
Google Play 游戏登录 IdP 设置¶
要使用 Google Play 游戏登录,请按如下方式进行设置。
AndroidManifest.xml 设置¶
这是Google Play服务的配置。它是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 以在应用中共享链接、图像或视频。通过将 Facebook AppID 附加到 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 Store)同时安装。
如果您不使用Facebook分享,请参考故障排除指南以删除FacebookContentProvider
权限的声明。
添加 Facebook AppId 和客户端令牌配置的设置(适用于 Facebook v13 及以上版本)。有关 Facebook 客户端令牌,请参阅 Facebook 控制台 中的 应用设置 > 高级设置。
示例:当 FacebookAppID 为 123456789
示例:当 Facebook 客户端令牌为 123456789
Note
您还可以在string.xml文件中设置Facebook AppId和客户端令牌。在这种情况下,设置android:value
时不需要fb
前缀。有关更多详细信息,请查看这里。
QQ/微信 IdP 配置¶
如果您支持 QQ 或 WeChat IdP,请申请以下附加内容。
在模块级build.gradle文件中设置libs文件夹的依赖。
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation fileTree(include: ['*.aar'], dir: 'libs')
}
从模块级libs文件夹(.aar/.jar)中添加来自Hive SDK发行版本的外部库。发行版本中包含的外部库列表如下。
- 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 登录时添加此文件)
VK IdP 配置¶
- 在/res/values/strings.xml文件中设置从VK控制台发出的应用程序ID。
Warning
VK IdP 提供的登录方法已更改,从 2024 年 6 月起,如果您在 VK 控制台中注册新的应用设置,将无法使用 Hive SDK 提供的 VK 登录。预计在 2025 年 4 月到 5 月之间,Hive SDK v4 25.2.0 或更高版本将支持更改后的登录方法。
华为 IdP 配置¶
- 添加agconnect-services.json
- 将从华为控制台下载的agconnect-services.json文件添加到项目文件夹中。
- 配置项目 - build.gradle 文件
- 添加AppGallery Connect插件和Maven地址。
buildscript { repositories { google() jcenter() // 华为HMS Core SDK。 maven {url 'https://developer.huawei.com/repo/'} } dependencies { ... // 华为AppGallery Connect插件 classpath 'com.huawei.agconnect:agcp:1.9.1.301' } } allprojects { repositories { google() jcenter() /// 华为HMS Core SDK。 maven {url 'https://developer.huawei.com/repo/'} } }
- 添加AppGallery Connect插件和Maven地址。
- 配置应用 - build.gradle 文件
- 添加华为身份验证库和插件。