iOS 地址
Hive SDK for iOS 提供了促销功能。本文档描述了如何配置 iOS 应用以使用促销功能。
添加框架¶
在您的项目目录中将框架添加到 Podfile。有关详细说明,请参见 添加框架。
在添加框架后保存Podfile,执行以下命令将框架安装到您的项目中。
设置深度链接¶
深度链接是指在应用启动后将用户带到应用中特定位置的链接。Hive SDK for iOS 支持在 推广用户参与 中处理深度链接方案。
- 在 Xcode 项目窗口中,在项目导航器中选择您的项目。
- 从 TARGETS 列表中选择您的应用程序。
- 单击 信息 选项卡。
- 在 信息 选项卡中单击 URL 类型 项。
- 单击 + 图标以创建 附加 URL 类型属性 项。
- 在 附加 URL 类型属性 项下的 标识符 和 URL 方案 字段中输入您的应用程序 ID。
使用以下代码,您可以创建一个 HTML 页面,以在安装游戏的应用程序中显示,以测试 URL Scheme 的行为。请注意,链接地址必须与配置深度链接时设置的 URL 相同。
设置延迟深度链接(通用链接)¶
Universal Link首次通过邀请页面实现应用程序的安装和启动,以及邀请者奖励。Hive SDK for iOS支持基于URI Scheme和基于Universal Link的延迟深度链接。
通过基于 Universal Link 的邀请链接邀请用户并奖励邀请者需要 UIPasteboard 粘贴系统权限。当被邀请用户首次使用邀请链接安装并启动应用时,对于 iOS 16.1 以下的版本,可能会出现一个吐司弹出窗口,而对于 iOS 16.1 及以上版本,可能会出现系统权限请求弹出窗口。要防止系统权限请求弹出窗口出现,请参考开发者网站上的推广操作指南,并禁用延迟深度链接设置。
Note
有关生成基于 Universal Link 的邀请链接的其他控制台设置说明,请参阅开发者网站上的 推广操作指南。
开发者无法自定义系统权限请求弹出窗口的文本。
Xcode 项目设置¶
选择您的 Xcode 项目的主要目标,并在“签名与功能”选项卡的“关联域”部分中按如下方式配置域。
- applinks:sandbox-promotion.qpyou.cn: 在Hive 沙盒服务器环境中运行的通用链接域名。
- applinks:promotion.qpyou.cn: 在Hive 商业服务器环境中运行的通用链接域名。
服务器设置¶
将以下以给定格式列出的值修改为您的环境,并将其保存为apple-app-site-association。
- 团队 ID: 在 Apple Developer Console 中找到的团队 ID
- 包标识符: 将使用通用链接的应用的包 ID
- URL 路径: 支持通用链接的 HTTP URL
<
上传到网络服务器的根目录或.well-known子目录。虽然apple-app-site-association文件的格式是JSON,但它没有扩展名。
{
"applinks": {
"apps": [],
"details": [
{
"appID": "--TEAM ID.--Bundle Identifier",
"paths": ["--URL Path"]
}
]
}
}
以下是来自苹果的一个示例。
{
"applinks": {
"apps": [],
"details": [
{
"appID": "9JA89QQLNQ.com.apple.wwdc",
"paths": ["/wwdc/news/", "/videos/wwdc/2015/*"]
}, {
"appID": "ABCD1234.com.apple.wwdc",
"paths": ["*"]
}
]
}
}
iOS 应用设置¶
在您的 Xcode 项目中遵循以下指示。
- 在 Xcode 项目窗口中,在项目导航器中选择您的项目。
- 从 TARGETS 列表中选择您的应用程序。
-
点击“签名与能力”选项卡。
-
点击 Signing & Capabilities 选项卡左上角的 + Capability 按钮。
-
从列表中选择并添加关联域。 applinks:[apple-app-site-association] 上传该域的域名(例如:applinks:hive-ota.withhive.com)
在Apple Developer Console中启用应用的功能中的关联域。
![](http://developers.withhive.com/wp-content/uploads/2020/01/ios_settings_apple_dev.png){width="700px"}
hive_config.xml 设置¶
按照如下方式添加/修改hive_config.xml文件: