跳轉至

iOS

本指南提供了在 iOS 上设置 Hive SDK 身份验证功能的说明。

功能新增

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

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

pod 'HiveDeviceManagement', $HIVE_SDK_VERSION # 앱 사용자의 기기 관리를 위한 프레임워크

要在訪客登錄中使用Google Recaptcha,請添加以下框架。

pod 'HiveGoogleRecaptcha', $HIVE_SDK_VERSION # 게스트 로그인시 봇 점수 기반의 Google recaptcha enterprise 기능을 사용하기 위한 프레임워크

根據中國國家新聞出版署發布的[關於加強未成年人網絡遊戲成癮管理的通知]及其他相關規定,為了使用需要來自中國的用戶進行實名驗證的功能,只有獲得中國許可的遊戲必須添加以下框架。

pod 'HiveRealNameVerification', $HIVE_SDK_VERSION # 실명 인증 서비스 추가


在保存了包含新增框架的 Podfile 後,運行下面的命令以在項目中安裝該框架。

pod install

添加 IdP

IdP框架添加到專案目錄中的Podfile。僅添加您將使用的IdP。


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

pod 'HiveAuthV4ProviderAppleSignIn', $HIVE_SDK_VERSION # Signin with Apple 로그인
pod 'HiveAuthV4ProviderFacebook', $HIVE_SDK_VERSION # Facebook idp, social Facebook 기능
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 # Hive 멤버십 로그인, social hive 기능
pod 'HiveAuthV4ProviderWeverse', $HIVE_SDK_VERSION # Weverse IdP
pod 'HiveAuthV4ProviderSteam', $HIVE_SDK_VERSION # Steam IdP
pod 'HiveAuthV4ProviderX', $HIVE_SDK_VERSION # X IdP
pod 'HiveAuthV4ProviderTelegram', $HIVE_SDK_VERSION # Telegram 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 이상)

在保存了包含新增框架的 Podfile 後,請運行下面的命令以在項目中安裝該框架。

pod install

hive_config.xml中輸入每個IdP的鍵值

輸入從每個 IdP 控制台獲得的鍵值到 hive_config.xml。如需更多詳細信息,請參閱 身份驗證先決條件

由 IdP 提供的附加設定

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

使用 Apple IdP 設定登入

本指南提供了設置 Apple IdP 登入的指示。請按照以下步驟將 Apple 登入添加到 IdP 列表中。

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

    6. 您可以看到使用 Apple 登入已添加到簽署和功能列表中。

    Apple 遊戲中心 IdP 設定

這是一個設置 Apple Game Center IdP 的指南。請按照以下步驟將 Apple Game Center 登錄添加到 IdP 列表中。

  1. 在 Xcode 项目窗口中,在项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击“签名和功能”选项卡。
  4. 点击“签名和功能”选项卡左上角的 + 功能 按钮。
  5. 从列表中选择 GameCenter 以添加它。

您可以查看添加到簽名和功能列表中的遊戲中心

Facebook IdP 配置

這是設置 Facebook IdP 的指南。

輸入 Facebook appid 和 clienttoken

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

Facebook 客戶端令牌可以在 Facebook 控制台應用程式設定 > 進階設定 中找到。

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

    5. 在 Facebook 控制台 App Dashboard,前往 Settings > Advanced > Security > Client Token 以檢查 FacebookClientToken。 6. 在 Info 標籤中點擊 Custom iOS Target Properties 區段,並在 FacebookClientToken 屬性中輸入 FacebookClientToken。 7. 在 Info 標籤中點擊 URL Types 區段,然後點擊 + 圖示以創建 Additional url type properties。 8. 在 Additional url type properties 區段的 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 数据添加到 LSApplicationQueriesSchemes (vkauthorize, vk-share, vk)。
  5. 信息 标签中,点击 URL 类型 项目,然后点击 + 图标以创建 附加 URL 类型属性 项目。
  6. 附加 URL 类型属性 项目下,在 URL Schemes 字段中输入带有 vk 前缀的 VK AppID(例如,Vk1231234)。

WeChat IdP 配置

這是一份設置 WeChat IdP 的指南。

輸入 WeChat appid

按照以下指示在 Xcode 项目中输入 WeChat AppID。

  1. 在 Xcode 项目窗口中,在项目导航器中选择您的项目。

  2. 从 TARGETS 列表中选择您的应用程序。

  3. 点击 信息 选项卡。

  4. 信息 选项卡中,点击 URL 类型 部分,然后点击 + 图标以创建 附加 URL 类型属性 条目。

  5. 附加 URL 类型属性 条目下的 URL 方案字段中,输入 标识符: weixinweixinULAPIURL 方案: 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 方案反向客户端 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|
            ...
            # Linesdkswift 사용 시 pod project 설정 변경필요
           if ['LineSDKSwift'].include? target.name
               config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
           # Xcode 14 에서 발생하는 CocoaPods bundle 타겟에 대한 code signing 컴파일 에러 이슈 대응
           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 集成状态信息

X IdP 配置

這是設置 X IdP 的指南。

輸入應用程式包 ID

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

  1. 在 Xcode 项目窗口中,从项目导航器中选择您的项目。
  2. 从 TARGETS 列表中选择您的应用程序。
  3. 点击 信息 标签。
  4. 信息 标签中点击 URL 类型 项,然后点击 + 图标以创建 附加 URL 类型属性 项。
  5. 附加 URL 类型属性 项下的 URL 方案字段中,输入带有 hive.x 前缀的应用程序包 ID(例如,hive.x.$(PRODUCT\_BUNDLE\_IDENTIFIER))。