iOS
このページはHive SDK iOS 認証設定のガイドです。
機能の追加¶
プロジェクトディレクトリのPodfileに認証機能フレームワークを追加します。使用したい認証機能のみを追加してください。
デバイス管理サービスを使用するには、次のフレームワークを追加してください:
ゲストログインにGoogle Recaptchaを使用するには、次のフレームワークを追加してください:
pod 'HiveGoogleRecaptcha', $HIVE_SDK_VERSION # Framework for using the Google recaptcha enterprise feature based on bot scores during guest login
中国国家新聞出版署が発表した[未成年者のオンラインゲーム依存症のさらなる厳格な管理に関する通知]などの規制に基づき、中国からアクセスするユーザーに対して実名確認を必要とする機能を、中国のゲームライセンスを取得したゲームにのみ使用するために、次のフレームワークを追加します:
使用したいフレームワークでPodfileを保存した後、プロジェクトにフレームワークをインストールするために次のコマンドを実行します:
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未満の場合は、次のフレームワークのみを追加してください:
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を保存したら、次のコマンドを実行してプロジェクトにフレームワークをインストールします:
IdPによる追加設定¶
IdPに応じて追加の設定が必要です。
Apple IdPセットアップでサインイン¶
Apple IdPでのサインイン設定の手順は以下の通りです。AppleログインをIdPリストに追加するには、これらの手順に従ってください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Signing & Capabilitiesタブをクリックします。
- Signing & Capabilitiesタブの左上にある+ Capabilityボタンをクリックします。
-
リストからSign In with Appleを選択して追加します。
-
追加されたAppleでサインインがSigning & Capabilitiesリストに表示されます。
Appleゲームセンター IdP セットアップ¶
Apple Game Center IdPの設定手順は以下の通りです。Apple Game CenterログインをIdPリストに追加するには、これらの手順に従ってください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Signing & Capabilitiesタブをクリックします。
- Signing & Capabilitiesタブの左上にある+ Capabilityボタンをクリックします。
-
リストからGameCenterを選択して追加します。
-
追加されたGame CenterをSigning & Capabilitiesリストで見ることができます。
Facebook IdPの設定¶
Facebook IdPの設定手順は以下の通りです。
Facebook AppIDとClientTokenの入力¶
以下の指示に従って、XcodeプロジェクトにFacebook AppIDとClientTokenを入力してください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
-
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のドキュメントを表示
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- InfoタブでLSApplicationQueriesSchemesをクリックし、+ボタンをクリックして、次の2つのスキームを追加します:
- fbapi
- fb-messenger-share-api
Info.plistファイルに以下のコードを直接追加することもできます。
QQ IdP セットアップ¶
QQ IdPの設定手順は以下の通りです。
QQスキームをホワイトリストに追加する¶
QQスキームをホワイトリストに追加するには、プロジェクトウィンドウを使用するか、コードを直接Info.plistファイルに追加することができます。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- 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を入力してください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- InfoタブのCustom iOS Target Properties項目をクリックし、VKデータ(
vkauthorize
、vk-share
、vk
)をLSApplicationQueriesSchemesに追加します。 - InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
- Additional url type properties項目の下のURL Schemesフィールドにvkプレフィックス付きのVK AppID(例:
Vk1231234
)を入力します。
WeChat IdPの設定¶
WeChat IdPの設定手順は以下の通りです。
WeChatのappidを入力する¶
以下の指示に従って、XcodeプロジェクトにWeChat AppIDを入力してください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
- Identifier: weixin、weixinULAPI、URL Schemes: APP_IDをAdditional url type properties項目のURL Schemesフィールドに入力します。
Note
WeChat IdPとHive SDKのプロモーションを一緒に使用する場合は、ユニバーサルリンクを適用する必要があります。
Google IdPの設定¶
Google IdPの設定手順は以下の通りです。
逆転クライアントIDの入力¶
以下の指示に従って、Xcodeプロジェクトに逆クライアントIDを入力してください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
- Identifierに空白を入力し、URL Schemesにreversed client IDをAdditional 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を保存した後、プロジェクトにフレームワークをインストールするために次のコマンドを実行します:
アプリバンドルIDの入力¶
以下の指示に従って、XcodeプロジェクトにApp Bundle IDを入力してください。
- Xcodeプロジェクトウィンドウのプロジェクトナビゲーターからプロジェクトを選択します。
- TARGETSリストからアプリを選択します。
- Infoタブをクリックします。
- InfoタブのCustom iOS Target Properties項目をクリックし、LSApplicationQueriesSchemesにLINEデータ(
lineauth2
)を追加します。 - InfoタブのURL Types項目をクリックし、次に+アイコンをクリックしてAdditional url type properties項目を作成します。
- Additional url type properties項目のURL Schemesフィールドに
line3rdp
プレフィックスを持つアプリバンドルID(例:line3rdp.$(PRODUCT\_BUNDLE\_IDENTIFIER)
)を入力します。
Warning
LINEログイン機能を実装した後、IdP接続ステータス情報にも追加する必要があります。