コンテンツにスキップ

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の追加

プロジェクトディレクトリのPodfileにIdPフレームワークを追加してください。使用したい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による追加設定

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でサインインがSigning & Capabilitiesリストに表示されます。

    ]

Appleゲームセンター IdP セットアップ

Apple Game Center IdPの設定手順は以下の通りです。Apple Game CenterログインをIdPリストに追加するには、これらの手順に従ってください。

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Signing & Capabilitiesタブをクリックします。
  4. Signing & Capabilitiesタブの左上にある+ Capabilityボタンをクリックします。
  5. リストからGameCenterを選択して追加します。

  6. 追加されたGame CenterをSigning & Capabilitiesリストで見ることができます。

Facebook IdPの設定

Facebook IdPの設定手順は以下の通りです。

Facebook AppIDとClientTokenの入力

以下の指示に従って、XcodeプロジェクトにFacebook AppIDとClientTokenを入力してください。

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Infoタブをクリックします。
  4. InfoタブでCustom iOS Target Properties項目をクリックし、FacebookAppIDプロパティにFacebookアプリIDを入力します。

    5. Facebookコンソールのアプリダッシュボード設定 > 詳細 > セキュリティ > クライアントトークンに移動してFacebookClientTokenを確認します。 6. InfoタブでカスタムiOSターゲットプロパティアイテムをクリックし、FacebookClientTokenプロパティにFacebookClientTokenを入力します。 7. InfoタブでURLタイプアイテムをクリックし、+アイコンをクリックして追加のURLタイププロパティアイテムを作成します。 8. 追加のURLタイププロパティアイテムのURLスキームフィールドにfbを付加したFacebook AppID(例: fb012342478841523)を入力します。

Facebookスキームをホワイトリストに追加

Facebookスキームをホワイトリストに追加するには、プロジェクトウィンドウを使用するか、Info.plistファイルにコードを直接追加することができます。

Note

iOS 9以降、外部アプリへの切り替えはホワイトリストに追加されたスキームのみ許可されています。iOS 9環境では、ユーザーがゲームからFacebookにログインすると、HiveプラットフォームはSafariウェブビューを介してFacebookログインを行うためにSafari View Controllerを使用します。したがって、ゲームアプリからFacebookアプリへの切り替えは行われず、アプリ内のブラウザを使用してログインを処理できます。Facebookは、デフォルトでFacebookスキームをホワイトリストに登録することを推奨しています。Facebook SDKのドキュメントを表示

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Infoタブをクリックします。
  4. InfoタブでLSApplicationQueriesSchemesをクリックし、+ボタンをクリックして、次の2つのスキームを追加します:
    • 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. Infoタブをクリックします。
  4. InfoタブのCustom iOS Target Properties項目をクリックし、VKデータ(vkauthorizevk-sharevk)をLSApplicationQueriesSchemesに追加します。
  5. InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
  6. Additional url type properties項目の下のURL Schemesフィールドにvkプレフィックス付きのVK AppID(例: Vk1231234)を入力します。

WeChat IdPの設定

WeChat IdPの設定手順は以下の通りです。

WeChatのappidを入力する

以下の指示に従って、XcodeプロジェクトにWeChat AppIDを入力してください。

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Infoタブをクリックします。
  4. InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
  5. Identifier: weixinweixinULAPIURL Schemes: APP_IDAdditional url type properties項目のURL Schemesフィールドに入力します。
Note

WeChat IdPとHive SDKのプロモーションを一緒に使用する場合は、ユニバーサルリンクを適用する必要があります。

Google IdPの設定

Google IdPの設定手順は以下の通りです。

逆転クライアントIDの入力

以下の指示に従って、Xcodeプロジェクトに逆クライアントIDを入力してください。

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Infoタブをクリックします。
  4. InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
  5. Identifierに空白を入力し、URL Schemesreversed client IDAdditional url type properties項目のURL Schemesフィールドに入力します。

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プロジェクトにApp Bundle IDを入力してください。

  1. Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
  2. TARGETSリストからアプリを選択します。
  3. Infoタブをクリックします。
  4. InfoタブのCustom iOS Target Properties項目をクリックし、LSApplicationQueriesSchemesにLINEデータ(lineauth2)を追加します。
  5. InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
  6. Additional url type properties項目のURL Schemesフィールドにline3rdpプレフィックスを持つアプリバンドルID(例: line3rdp.$(PRODUCT\_BUNDLE\_IDENTIFIER))を入力します。
Warning

LINEログイン機能を実装した後、IdP接続ステータス情報にも追加する必要があります。