配置类¶
Configuration 类允许您在应用程序运行时 检索 (get) 或修改 (set) 配置值。例如,您可以使用 getServerId() 方法来检索应用服务器信息,并使用 setServerId() 方法来修改它。
作为使用Configuration类的示例,您可以在应用程序运行时将用户的zone设置更改为Configuration类。
API 参考: hive::Configuration::setZone
API 参考: Configuration.setZone
API 参考: Configuration.setZone
API 参考: ConfigurationInterface.setZone
API 参考: HIVEConfiguration:setZone
Note
Configuration类的setZone方法必须在调用setup函数之前调用,以确保其正常工作。
配置类使用场景¶
在以下情况下,您需要在应用程序执行期间更改Hive SDK设置。
在 Hive SDK 初始化之前¶
在初始化Hive SDK之前,反映游戏服务器或游戏语言设置。
在 Hive SDK 初始化后 ~ 在服务器检查弹出之前¶
这是用户在初始化 Hive SDK 后选择游戏服务器并显示服务器检查弹出窗口的情况。在初始化 Hive SDK 后,暴露游戏服务器选择 UI,并在设置中反映用户选择的游戏服务器。执行此过程后,显示服务器检查弹出窗口。
进入游戏后¶
如果用户在进入游戏后更改游戏设置中的游戏语言或游戏服务器,您可以在游戏设置或其他菜单中创建游戏服务器或游戏语言更改的用户界面。 如果用户使用此用户界面更改服务器或语言,您还应在设置中反映此信息。
其他情况¶
在各种情况下更改现有设置值,例如当游戏信息因游戏规划或其他情况而变化时。
Note
你可以更改值,但有一些无法检索的项目。
配置类使用示例¶
以下是使用Configuration类的一些更多示例。
Hive 主题设置¶
您可以使用 Configuration.setHiveTheme 来暴露暗黑主题。
API 参考: hive.Configuration.setHiveTheme
API 参考: hiveTheme
API 参考: Configuration.setHiveTheme
API 参考: HIVEConfiguration:setHiveTheme
API 参考: HIVEConfiguration:setHiveTheme
配置类和 hive_config.xml 文件¶
通过Configuration类中的方法更改设置将覆盖在hive_config.xml中设置的值。换句话说,Configuration类设置的值具有更高的优先级。然而,Hive SDK在内部使用Configuration类设置的值,并且hive_config.xml文件中的现有值不会被更改。
例如,即使您在上述zone设置的hive_config.xml中将zone设置为sandbox,如果您使用Configuration类将此值更改为real并初始化Hive SDK,Hive SDK将基于real进行操作。然而,hive_config.xml中的zone将保持为sandbox。
配置类可检索仅限设置¶
可以仅通过Configuration类方法检索(get)的配置项如下。
| 项目 | 描述 |
|---|---|
| hiveSDKVersion | 这是 Hive SDK 版本。 |
| referenceSDKVersion | 这是 Hive SDK 参考的 SDK 版本。 |
| hiveCountry | 这是由 Hive SDK 服务器确定的国家代码。 |
配置类可修改设置¶
可以使用 Configuration 类方法修改的项目 (set) 如下所示。这些项目与在构建应用程序之前预配置在 hive_config.xml 中的 Hive SDK 通用设置项 相同。必填项必须输入,选填项根据需要输入。如果您不输入选填项,Hive SDK 将使用默认值运行。
| 项目 | 描述 | 必需 | SDK 默认值 |
|---|---|---|---|
| appId | 这是游戏构建标识符。 | X | Android: 应用默认包名,iOS: 包 ID |
| serverId | 这是每个游戏服务器的标识符,可以在游戏按区域操作服务器时进行检查。必须根据 Hive 标识符政策进行书写。 | O | 空白 |
| zone | 这是 Hive 客户端连接的服务器。
| X | `REAL` |
| useLog | 这是是否激活 Hive 客户端内部操作的日志记录。如果启用日志记录,将会输出日志到开发工具屏幕。
| X | `false` |
| company | 这是游戏发行公司。
| O | 空白 |
| channel | 这是游戏应用使用的登录服务平台。C2S: Hive 平台(默认) | O | `C2S` |
| market | 这是进行应用内购买支付的市场。
| O | 空白 |
| httpConnectTimeout | 这是 Hive 客户端内部使用的 HTTP 连接的超时时间(以秒为单位)。默认值设置为 8 秒,除非有特殊情况,否则禁止更改该值。 | X | `8`(单位:秒) |
| httpReadTimeout | 这是 Hive 客户端内部使用的 HTTP 读取的超时时间(以秒为单位)。默认值设置为 8 秒,除非有特殊情况,否则禁止更改该值。 | X | `8`(单位:秒) |
| gameLanguage | 这是在 Hive SDK 中设置的游戏语言。 | X | `en` |
| ageGateU13 | 这是是否应用COPPA ageGateU13。要将COPPA ageGateU13应用于Hive SDK,您需要在Hive 控制台中注册COPPA条款和条件,并在初始化Hive SDK之前将此值设置为true。要不应用COPPA ageGateU13,您需要在Hive 控制台中注册其他条款和条件,并在初始化Hive SDK之前将此值设置为false。
| X | `false` |
| agreementDetermineBase | 确定接收条款和条件的同意标准。您可以选择`device`或`account`,默认值为`device`。
| X | `device` |
Note
当应用COPPA ageGateU13时,仅能显示device 基于条款和条件同意的弹出窗口。 如果用户在条款和条件同意过程中回应他们13岁或以上,则Hive SDK将不对该用户应用COPPA ageGateU13。然而,hive_config.xml中设置的值(true)本身不会改变。
不支持的项目¶
以下是Configuration类中不再支持的方法。
| 项目 | 描述 | 备注 |
|---|---|---|
| 权限 | 这是是否按权限类型请求权限。这是一个仅限Android的功能。
| 自v4.16.3起已弃用 |
| hivePermissionViewOn | 这是是否显示Hive SDK权限通知弹窗。
| 自v4.16.2起已弃用 |

