Game > Gamebase > iOS SDK ご利用ガイド > はじめる

Environments

[INFO]

要件

  • ユーザー実行環境:iOS 9以上
  • ビルド環境:Xcode 13 (iOS 15 SDK)以上


[注意]

一部のIdPサポートをする時は下段3rd Party Gamebase Auth Adapters表内のSupport iOS Version項目を参考にしてください。 AppStoreでリリースする時には、必ずAppleバージョンポリシーを遵守する必要があります。

  • https://developer.apple.com/ios/submit/

Setting

Gamebaseは、次のような方法で設定できます。

Download

Gamebase.framework.zip及び必要なadapterをダウンロードします。
また、各IdPの認証をするためのSDKファイルをダウンロードする必要があります。該当するIdPのログインを使用するときにだけ含めれば問題ありません。
ダウンロードした後、該当するSDKファイルをプロジェクトのtargetに含めなければなりません。

Gamebase iOS SDK Components

Gamebase SDK Gamebase Auth Adapter External(iOS) SDK & Compatible Version Usage Support iOS Version
Gamebase Gamebase.framework
Gamebase.bundle
ToastSDK 0.30.0 GamebaseのInterfaceおよびコアロジックを含む iOS 9 or later
Gamebase Auth Adapters GamebaseAuthFacebookAdapter.framework FacebookSDK v9.2.0 Facebookログインをサポート iOS 9 or later
GamebaseAuthPaycoAdapter.framework PaycoID Login 3rd SDK v1.5.5 PAYCOログインをサポート iOS 9 or later
GamebaseAuthNaverAdapter.framework naveridlogin-sdk-ios-4.1.1 NAVERログインをサポート iOS 9 or later
GamebaseAuthGamecenterAdapter.framework GameKit.framework Gamecenterログインをサポート iOS 9 or later
GamebaseAuthGoogleAdapter.framework GoogleSignIn 5.0.2 Googleログインをサポート iOS 9 or later
GamebaseAuthTwitterAdapter.framework Twitterログインをサポート iOS 9 or later
GamebaseAuthLineAdapter.framework LineSDK v5.0.1 LINEログインをサポート iOS 10 or later
GamebaseAuthAppleidAdapter.framework Sign In with Apple iOS 9 or later
arm64サポート
GamebaseAuthHangameAdapter.framework HangameID SDK 1.6.4 Hangameログインをサポート iOS 9 or later
GamebaseAuthWeiboAdapter.framework weibo_ios_sdk-3.2.7 Weiboログインをサポート iOS 9 or later
GamebaseAuthKakaogameAdapter.framework KakaoGame 3.11.5 Kakaoログインをサポート iOS 11 or later
Gamebase IAP Adapters GamebasePurchaseIAPAdapter.framework StoreKit.framework
ToastIAP 0.30.0
ToastGamebaseIAP 0.13.0
ゲーム内決済をサポート iOS 9 or later
Gamebase Push Adapters GamebasePushAdapter.framework ToastPush 0.30.0 Pushをサポート iOS 9 or later

[注意]

Sign In with Appleに必要なAuthenticationServices.frameworkを追加する場合は必ずOptionalに設定する必要があります。 Requiredに設定すると、iOS 11以下の端末では実行直後にクラッシュが発生します。

Gamebase SDK iOS 2.13.0以上では、iOS 9以上でSign In with Appleがサポートされ、追加でGamebase ConsoleにService IDを設定する必要があります。


[Caution]

Gamebase Frameworkファイルのうち、名前にAdapterが含まれているファイルは、選択してプロジェクト内で使用有無を決定することができ、使用しないAdapter Frameworkは削除することを推奨します。 該当Adapter Frameworkを使用するには、上の表に明示された外部SDKが必要な場合があります。 一部の認証Adapterの場合は、上の表にあるサポートするiOSバージョンに注意する必要があります。 (サポートバージョンがiOS 10以上のAuth Adpaterをビルドに含めると、iOS 9以下ではランタイムクラッシュが発生します。)


[INFO]

各IdPが提供する外部SDKに対する設定は、各IdPのガイドドキュメントをご参考ください。

Xcode Settings

解凍すると、次のようにGamebase.frameworkなどのSDKを確認することができます。

unzip gamebase

  • 1) FrameworkファイルをProjectのProject Navigatorにドラッグ・アンド・ドロップでimportします。このときに追加されたFrameworkファイルは、プロジェクトtargetに追加されなければなりません。
  • 2) Gamebase.bundleファイルもCopy Bundle Resourcesに追加します。 Gamebase.bundle Bundle Resources
  • 3) Gamebaseを使用するには、Gamebaseのframeworkの他に、Gamebaseで使用している外部SDKの機能を含めるために、複数のframeworkとlibraryファイルをlinkerから参照できるように追加する必要があります。以下の項目を追加する必要があります。
    • libicucore.tbd
    • libz.tbd
    • libsqlite3.tbd
    • libc++.tbd
    • AdSupport.framework
    • ImageIO.framework
    • GameKit.framework
    • StoreKit.framework
    • AuthenticationServices.framework (Optional)
    • AppTrackingTransparency.framework (Optional)

Link Binary With Libraries

  • 4) Gamebase iOS SDK 2.12.0以上を使用する場合、Facebook SDKがアップデートされたことに伴い、追加設定が必要です。
    • Accelerate.framework追加
    • プロジェクト内部に空のswiftファイル追加(プロジェクト内部にswiftファイルが1つもない場合)
  • 5) Target > Build Settings > Linking > Other Linker Flags-ObjCを追加する必要があります。 Other Linker Flags
  • 6) NaverAuthAdapterを使用する場合にはNAVER SDKで提供するNaverThirdPartyLogin.frameworkファイルをTarget > General > Embedded Binariesに追加する必要があります。 Naver Embeded Binaries

[INFO]

Linkerに-ObjCオプション設定は、Static LibraryにあるすべてのObjective-C classとcategoryを読み込みます。
このオプションを設定しない場合、selector not recognizedのようなエラーがRuntime上で発生することがあります。


[注意]

  • Unity(2019.3以上)をビルドする場合、 Gamebase iOS SDKをUnityFrameworkターゲットにのみimportします。
  • Unityビルドを行うと、XcodeプロジェクトのターゲットにUnity-iPhoneUnityFrameworkが生じます。
  • 各ターゲットにGamebase iOS SDKを重複してimportすると、動作に問題が生じることがあるため、注意する必要があります。

CocoaPods Settings

Gamebase iOS SDKは、CocoaPodsを使用して設定できます。

  • 1) Xcodeを実行し、プロジェクトを作成します。
  • 2) Terminalを実行し、CocoaPodsを適用するプロジェクトのディレクトリに移動します。
  • 3) pod initコマンドを実行し、Podfileを作成します。
  • 4) 作成されたPodfileをエディタで開き、次のような内容を作成します。
platform :ios, '10.0'

target 'SampleApplication' do
    pod 'Gamebase'
    pod 'GamebaseAuthFacebookAdapter'
    pod 'GamebaseAuthGamecenterAdapter'
    pod 'GamebaseAuthPaycoAdapter'
    pod 'GamebaseAuthNaverAdapter'
    pod 'GamebaseAuthTwitterAdapter'
    pod 'GamebaseAuthGoogleAdapter'
    pod 'GamebaseAuthLineAdapter'
    pod 'GamebaseAuthAppleidAdapter'
    pod 'GamebaseAuthWeiboAdapter'
    pod 'GamebasePushAdapter'
    pod 'GamebasePurchaseIAPAdapter'

    # 次のモジュールの使用方法はサポートへお問い合わせください。
    pod 'GamebaseAuthHangameAdapter'
    pod 'GamebaseAuthKakaogameAdapter'
end

[参考]

target 'SampleApplication' do部分には作成したプロジェクトのターゲット名を入力します。
pod 'Gamebase', '2.6.0'のように入力して、特定バージョンを指定できます。それぞれのpodにバージョンを明示しない場合は最新バージョンが設定されます。
特定Adapterのみを任意で適用できます。

[注意]

Gamebase最新バージョンを使用しない場合、一部のAdapterを使用できないことがあります。

  • 5) Podfileの作成が完了したらpod installまたはpod updateコマンドを実行してGamebaseをインストールします。
  • 6)インストールが完了したらプロジェクト名.xcworkspaceファイルが作成されます。その後は作成されたxcworkspaceファイルを利用して開発を行います。

[参考]

詳細なCocoaPods使用方法は、CocoaPods GuideUsing CocoaPodsページを参照してください。

IdP Settings

[注意]

  • NHN Cloud Consoleで新しいプロジェクトを作成してGamebaseサービスが有効になっていることを必ず確認してください。
  • 各IdPのコンソールでClient IDを発行してGamebaseコンソールに入力していることを必ず確認してください。

Google

PAYCO

  • URL Schemeを設定する必要があります。
    • Xcode > Target > Info > URL Typestcgb.{Bundle ID}.paycoを追加する必要があります。
    • Xcode > Target > Info > URL Typespaycologinsdkを追加する必要があります。
  • URL Schemeを設定する必要があります。
    • Xcode > Target > Info > URL Typestcgb.{Bundle ID}.naverを追加する必要があります。
    • NAVER Developers > マイアプリケーション > API設定 > iOS > URL Schemetcgb.{Bundle ID}.naverを追加する必要があります。
  • Info.plistファイルでSchemeを登録します。
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>naversearchthirdlogin</string>
    <string>naversearchapp</string>
</array>

Twitter

  • URL Schemeを設定する必要があります。
    • Xcode > Target > Info > URL Typestcgb.{Bundle ID}.twitterを追加する必要があります。
  • TwitterのDeveloperサイトのApps > 対象プロジェクト > App Details > Callback URL項目を設定する必要があります。
    • tcgb.{Bundle ID}.twitter://を追加します。

LINE

  • URL Schemeを設定する必要があります。

    • Xcode > Target > Info > URL Typesline3rdp.{App Bundle ID}を追加する必要があります。
  • LINEで発行されたChannelIDをInfo.plistファイルに設定する必要があります。

<key>LineSDKConfig</key>
<dict>
    <key>ChannelID</key>
    <string>{Issued LINE ChannleID}</string>
</dict>
  • ATS設定を行うためにInfo.plistファイルにSchemeを登録します。
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>lineauth</string>
    <string>line3rdp.{App Bundle ID}</string>
</array>
  • LINE Loginを使用するためのプロジェクト設定は次のリンクを参照します。(認証必要)
  • LINK [LINE Developer Guide]

Weibo

IdP Settings (Legacy)

Google

  • Gamebase iOS SDK 2.34.1以下
    • URL Schemeを設定する必要があります。
      • Xcode > Target > Info > URL Typestcgb.{Bundle ID}.googleを追加する必要があります。
  • Gamebase iOS SDK 1.12.1以下
    • NHN Cloud Console > Gamebase > App > 認証情報 > 追加情報& Callback URL追加情報項目にJSON string形式の情報を設定する必要があります。
      • Googleの場合、iOSアプリで必要な情報url_scheme_ios_onlyの設定が必要です。
      • url_scheme_ios_onlyの値はXcodeのURL Schemeに登録された値のいずれか1つと一致する必要があります。
    • URL Schemeを設定する必要があります。
      • Xcode > Target > Info > URL Types
  • Google追加認証情報の入力例
{ "url_scheme_ios_only": "Your URL Scheme" }

gamebase_auth_google_console_01

NAVER

  • Gamebase iOS SDK 1.12.1以下
    • NHN Cloud Console > Gamebase > App > 認証情報 > 追加情報& Callback URL追加情報項目にJSON String形式の情報を設定する必要があります。
      • NAVERの場合、ログイン同意ウィンドウに表示するアプリ名であるservice_nameを設定する必要があります。
      • iOSアプリで必要な情報であるurl_scheme_ios_onlyを追加で設定する必要があります。
    • URL Schemeを設定する必要があります。
      • Xcode > Target > Info > URL Types
  • NAVER追加認証情報の入力例
{ "url_scheme_ios_only": "Your URL Scheme", "service_name": "Your Service Name" }

gamebase_auth_naver_console_01

3rd-Party Provider SDK Guide

API Reference

SDKの中に含まれています。

API Deprecate Governance

GamebaseでサポートしないAPIは、使用していないもの(deprecate)として処理します。 使用していない(deprecated) APIは、次の条件を満たす場合、事前告知を行わずに削除されることがあります。

  • 5回以上のマイナーバージョンアップデート

    • Gamebase Version Format - XX.YY.ZZ
      • XX:Major
      • YY:Minor
      • ZZ:Hotfix
  • 最低5ヶ月経過

TOP