跳轉至

iOS

本頁面指導Hive SDK iOS 認證配置。

添加功能

身份驗證功能框架添加到您項目目錄中的Podfile中。僅添加您想要使用的身份驗證功能。

要使用設備管理服務,請添加以下框架:

pod 'HiveDeviceManagement', $HIVE_SDK_VERSION # Framework for managing the devices of app users

要使用 Google Recaptcha 進行訪客登錄,請添加以下框架:

pod 'HiveGoogleRecaptcha', $HIVE_SDK_VERSION # Framework for using the Google recaptcha enterprise feature based on bot scores during guest login

根據中國國家新聞出版署發布的[關於進一步加強未成年人網絡遊戲成癮管理的通知]等法規,僅對已獲得中國遊戲許可證的遊戲使用需要實名驗證的功能,添加以下框架:

pod 'HiveRealNameVerification', $HIVE_SDK_VERSION # Real-name verification service added


在保存包含您想要使用的框架的 Podfile 后,运行以下命令以在您的项目中安装这些框架:

pod install

添加 IdP

IdP框架添加到您項目目錄中的Podfile中。僅添加您想要使用的IdP。


以下是將框架添加到您項目目錄中的 Podfile 的示例。您可以在不添加框架的情況下使用訪客登錄功能。

pod 'HiveAuthV4ProviderAppleSignIn', $HIVE_SDK_VERSION # Signin with Apple login
pod 'HiveAuthV4ProviderFacebook', $HIVE_SDK_VERSION # Facebook idp, social Facebook feature
pod 'HiveAuthV4ProviderQQ', $HIVE_SDK_VERSION # QQ IdP
pod 'HiveAuthV4ProviderVK', $HIVE_SDK_VERSION # VK IdP
pod 'HiveAuthV4ProviderWechat', $HIVE_SDK_VERSION # WeChat IdP
pod 'HiveAuthV4ProviderGoogle', $HIVE_SDK_VERSION # Google IdP
pod 'HiveAuthV4ProviderAppleGameCenter', $HIVE_SDK_VERSION # Apple game center IdP
pod 'HiveAuthV4ProviderHive', $HIVE_SDK_VERSION # Membership login, Hive SDK Social feature
pod 'HiveAuthV4ProviderWeverse', $HIVE_SDK_VERSION # Weverse IdP

使用 Line IdP 时,如果目标低于 iOS 13,仅需添加以下框架:

pod 'HiveAuthV4ProviderLine', $HIVE_SDK_VERSION # Line IdP

如果是 iOS 13 或更高版本,請添加以下框架:

pod 'HiveAuthV4ProviderLine', $HIVE_SDK_VERSION # Line IdP
pod 'HiveAuthV4ProviderLine/LineSDKSwift11', $HIVE_SDK_VERSION # Line idp(5.11.0 / iOS 13 or above)

在保存包含您想要使用的框架的 Podfile 后,运行以下命令以在您的项目中安装这些框架:

pod install

由身份提供者的額外設置

根據身份提供者(IdP),需要額外的設置。

使用 Apple IdP 設定登入

以下是設置使用 Apple IdP 登入的說明。請按照這些步驟將 Apple 登入添加到您的 IdP 列表中。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用。
  3. 点击“签名与能力”标签。
  4. 点击“签名与能力”标签左上角的 + 能力 按钮。
  5. 从列表中选择 使用 Apple 登录 以添加它。

  6. 你可以在簽署與功能列表中看到新增的 使用 Apple 登入

    ]

蘋果遊戲中心 IdP 設定

以下是設置 Apple Game Center IdP 的說明。按照這些步驟將 Apple Game Center 登錄添加到您的 IdP 列表中。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用。
  3. 点击 Signing & Capabilities 选项卡。
  4. 点击 Signing & Capabilities 选项卡左上角的 + Capability 按钮。
  5. 从列表中选择 GameCenter 以添加它。

  6. 你可以在簽名與功能列表中看到新增的遊戲中心

Facebook IdP 設定

以下是設置 Facebook IdP 的指示。

輸入 Facebook AppID 和 ClientToken

按照以下指示在您的 Xcode 项目中输入 Facebook AppID 和 ClientToken。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用。
  3. 点击 Info 选项卡。
  4. 在 Info 选项卡中点击自定义 iOS 目标属性项,并在 FacebookAppID 属性中输入您的 Facebook 应用 ID。

    5. 在 Facebook 控制台 App Dashboard 中检查 FacebookClientToken,路径为 设置 > 高级 > 安全 > 客户端令牌。 6. 在信息标签中点击自定义 iOS 目标属性项,并在 FacebookClientToken 属性中输入 FacebookClientToken。 7. 在信息标签中点击 URL 类型项,然后点击 + 图标以创建一个 附加 URL 类型属性 项。 8. 在附加 URL 类型属性项的 URL Schemes 字段中输入带有 fb 后缀的 Facebook AppID(示例:fb012342478841523)。

將 Facebook 計劃添加到白名單

要將 Facebook 計劃添加到白名單,您可以使用項目窗口或直接將代碼添加到 Info.plist 文件中。

Note

從 iOS 9 開始,切換到外部應用程序僅允許對已添加到白名單的方案進行操作。在 iOS 9 環境中,當用戶從您的遊戲登錄 Facebook 時,Hive 平台使用 Safari 視圖控制器通過 Safari 網頁視圖執行 Facebook 登錄。因此,遊戲應用程序與 Facebook 應用程序之間不會發生切換,並且可以使用應用程序內的瀏覽器處理登錄。Facebook 建議您默認將 Facebook 方案註冊到白名單中。查看 Facebook SDK 文檔

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用。
  3. 点击 Info 标签。
  4. 在 Info 标签中,点击 LSApplicationQueriesSchemes,点击 + 按钮,并添加以下两个方案:
    • fbapi
    • fb-messenger-share-api


您也可以直接将以下代码添加到 Info.plist 文件中。

"LSApplicationQueriesSchemes" : [
 "fbapi", 
 "fb-messenger-share-api"
]

QQ IdP 設定

以下是設置 QQ IdP 的指示。

將 QQ 計劃添加到白名單

要將 QQ 計劃添加到白名單,您可以使用項目窗口或直接將代碼添加到 Info.plist 文件中。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击 Info 标签。
  4. 在 Info 标签中点击 LSApplicationQueriesSchemes,点击 + 按钮,并添加以下方案:
    • mqqOpensdkSSoLogin
    • mqqopensdkapiV2
    • mqqopensdkapiV3
    • wtloginmqq2
    • mqq
    • mqqapi
    • mqqopensdknopasteboard
    • mqqopensdknopasteboardios16

您也可以直接将以下代码添加到 Info.plist 文件中。

"LSApplicationQueriesSchemes" : [
 "mqqOpensdkSSoLogin",
 "mqqopensdkapiV2",
 "mqqopensdkapiV3",
 "wtloginmqq2",
 "mqq",
 "mqqapi"
]

VK IdP 設定

以下是設置 VK IdP 的指示。

輸入 VK AppID

按照以下指示在您的 Xcode 项目中输入 VK AppID。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击 信息 标签。
  4. 信息 标签中点击 自定义 iOS 目标属性 项,并将 VK 数据(vkauthorizevk-sharevk)添加到 LSApplicationQueriesSchemes
  5. 点击 信息 标签中的 URL 类型 项,然后点击 + 图标以创建 附加 URL 类型属性 项。
  6. 附加 URL 类型属性 项下的 URL Schemes 字段中输入带有 vk 前缀的 VK AppID(例如:Vk1231234)。

WeChat IdP 設定

以下是設置微信身份提供者的指示。

輸入 WeChat appid

按照以下说明在您的 Xcode 项目中输入 WeChat AppID。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击 信息 选项卡。
  4. 信息 选项卡中点击 URL 类型 项,然后点击 + 图标以创建 附加 URL 类型属性 项。
  5. 附加 URL 类型属性 项下的 URL Schemes 字段中输入 标识符: weixin, weixinULAPI, URL Schemes: APP_ID
Note

當使用 WeChat IdP 和 Hive SDK 促銷一起時,您需要申請 Universal Link

Google IdP 設定

以下是設置 Google IdP 的指示。

輸入反向客戶端 ID

按照以下指示在您的 Xcode 项目中输入反向客户端 ID。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用。
  3. 点击 信息 标签。
  4. 信息 标签中点击 URL 类型 项,然后点击 + 图标以创建 附加 URL 类型属性 项。
  5. 附加 URL 类型属性 项下的 URL Schemes 字段中,将 标识符 输入为空格,将 URL Schemes 输入为 反向客户端 ID

Line IdP 設定

以下是設置 Line IdP 的指示。

修改 Podfile

使用 Line IdP 时,您需要将以下内容添加到项目目录中 Podfile 的 post_install 代码中。

post_install do |installer|
   installer.pods_project.targets.each do |target|
       target.build_configurations.each do |config|
            ...
            # Change pod project settings when using linesdkswift
           if ['LineSDKSwift'].include? target.name
               config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
           # Response to a code signing compilation error issue for cocoapods bundle targets that occurs in xcode 14
           elsif config.build_settings['WRAPPER_EXTENSION'] == 'bundle'
               config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO'
           end
            ...
       end
   end
end

在保存如上所述修改的 Podfile 之後,運行以下命令以在您的項目中安裝框架:

pod install

輸入應用程式包 ID

按照以下指示在您的 Xcode 项目中输入应用程序包 ID。

  1. 在 Xcode 项目窗口的项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击 信息 标签。
  4. 信息 标签中点击 自定义 iOS 目标属性 项,并将 LINE 数据 (lineauth2) 添加到 LSApplicationQueriesSchemes
  5. 信息 标签中点击 URL 类型 项,然后点击 + 图标以创建 附加 URL 类型属性 项。
  6. 附加 URL 类型属性 项下的 URL Schemes 字段中输入带有 line3rdp 前缀的应用程序包 ID(示例:line3rdp.$(PRODUCT\_BUNDLE\_IDENTIFIER))。
Warning

实现 LINE 登录功能后,您还必须将其添加到 IdP 连接状态信息