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

Environments

AndroidでGamebaseを利用するためのシステム環境は、次の通りです。

[最小仕様]

  • 使用者実行環境:Android API19 (KitKat, OS 4.4)以上
  • ビルド環境:Android Gradle Plugin 3.2.0以上
  • 開発環境:Android Studio

Dependencies

Gamebase SDK Gamebase Adapter External SDK 用途 minSdkVersion
Gamebase gamebase-sdk nhncloud-core-1.9.0
nhncloud-common
nhncloud-crash-reporter-ndk
nhncloud-logger
gson-2.8.9
okhttp-3.12.13
kotlin-stdlib-1.8.0
kotlin-stdlib-common
kotlin-stdlib-jdk7
kotlin-stdlib-jdk8
kotlin-android-extensions-runtime
kotlinx-coroutines-core-1.6.4
kotlinx-coroutines-android
kotlinx-coroutines-core-jvm
Gamebaseのインターフェイスおよびコアロジックを含む API 19(Kitkat, OS 4.4)
Gamebase Auth Adapters gamebase-adapter-auth-appleid - Sign In With Appleログインをサポート -
gamebase-adapter-auth-facebook facebook-login-16.1.2 Facebookログインをサポート -
gamebase-adapter-auth-google play-services-auth-20.3.0 Googleログインをサポート -
gamebase-adapter-auth-gpgs-v2 play-services-games-v2-20.1.2 GPGS(Google Play Games Services) V2ログインをサポート API 21(Lollipop, OS 5.0)
gamebase-adapter-auth-hangame hangame-id-1.13.0 Hangameログインをサポート -
gamebase-adapter-auth-line linesdk-5.8.1 Lineログインをサポート -
gamebase-adapter-auth-naver naveridlogin-android-sdk-5.7.0 NAVERログインをサポート API 21(Lollipop、OS 5.0)
gamebase-adapter-auth-payco payco-login-1.5.14 Paycoログインをサポート -
gamebase-adapter-auth-twitter signpost-core-1.2.1.2 Twitterログインをサポート API 21(Lollipop, OS 5.0)
gamebase-adapter-auth-weibo sinaweibosdk.core-13.5.0 Weiboログインをサポート -
gamebase-adapter-auth-weibo-v4 openDefault-4.4.4 Weiboログインをサポート -
gamebase-adapter-auth-kakaogame kakaogame.idp_kakao-3.19.0
kakaogame.gamesdk-3.19.0
kakaogame.common-3.19.0
kakao.sdk.v2-auth-3.19.0
kakao.sdk.v2-partner-auth-3.19.0
kakao.sdk.v2-common-3.19.0
play-services-ads-identifier-17.0.0
Kakaoログインをサポート API 23(Marshmallow, OS 6.0)
Gamebase IAP Adapters gamebase-adapter-toastiap toast-gamebase-iap-0.21.0
nhncloud-iap-core
ゲーム内決済をサポート -
gamebase-adapter-purchase-amazon nhncloud-iap-amazon Amazon Appstoreをサポート -
gamebase-adapter-purchase-galaxy nhncloud-iap-galaxy Galaxy Storeをサポート API 21(Lollipop, OS 5.0)
Galaxy IAP SDKのminSdkVersionは18ですが、
実際の決済のためにインストールしなければいけないCheckoutサービスアプリの
minSdkVersionは21です。
gamebase-adapter-purchase-google billingclient.billing-5.0.0
nhncloud-iap-google
Google Play Storeをサポート -
gamebase-adapter-purchase-huawei nhncloud-iap-huawei Huawei App Galleryをサポート -
gamebase-adapter-purchase-onestore nhncloud-iap-onestore ONE store v17をサポート -
gamebase-adapter-purchase-onestore-v19 nhncloud-iap-onestore-v19 ONE store v19をサポート -
gamebase-adapter-purchase-onestore-v21 nhncloud-iap-onestore-v21 ONE store v21をサポート API 23(Marshmallow, OS 6.0)
gamebase-adapter-purchase-onestore-external nhncloud-iap-onestore-external ONE store外部決済機能をサポート -
gamebase-adapter-purchase-mycard nhncloud-iap-mycard MyCard決済機能をサポート API 21(Lollipop、OS 5.0)
Gamebase Push Adapters gamebase-adapter-toastpush nhncloud-push-analytics
nhncloud-push-core
nhncloud-push-notification
Pushをサポート -
gamebase-adapter-push-adm nhncloud-push-adm Amazon Device Messagingをサポート -
gamebase-adapter-push-fcm firebase-messaging-17.6.0
nhncloud-push-fcm
Firebase Notificationをサポート -

Setting

Console

[注意]

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

Register as Tester

Gamebase Test Device

Store's Tester

Gradle

Using AndroidX

  • AndroidX使用宣言をビルド設定に追加してください。

    • Android Studio

      # gradle.properties
      # >>> [AndroidX]
      android.useAndroidX=true
      android.enableJetifier=true
      
    • Unity 2019.2以下

      // mainTemplate.gradle
      ([rootProject] + (rootProject.subprojects as List)).each {
          ext {
              // >>> [AndroidX]
              it.setProperty("android.useAndroidX", true)
              it.setProperty("android.enableJetifier", true)
          }
      }
      
    • Unity 2019.3以上

      # gradleTemplate.properties
      # >>> [AndroidX]
      android.useAndroidX=true
      android.enableJetifier=true
      
    • Unreal

      <gradleProperties>
        <insert>
          android.useAndroidX=true
          android.enableJetifier=true
        </insert>
      </gradleProperties>
      

Under AGP 3.4.0

  • Android Gradle Pluginバージョンが3.4.0未満の場合、ビルドが失敗するため、次の宣言が必要です。

    # gradle.properties
    # >>> Fix for AGP under 3.4.0
    android.enableD8.desugaring=true
    android.enableIncrementalDesugaring=false
    
  • Unityの場合、Editorバージョンが2018.4.3以下または2019.1.6以下の場合、これに該当します。(AGPバージョンが3.2.0)

    // mainTemplate.gradle
    ([rootProject] + (rootProject.subprojects as List)).each {
        ext {
            // >>> Fix for AGP under 3.4.0
            it.setProperty("android.enableD8.desugaring", true)
            it.setProperty("android.enableIncrementalDesugaring", false)
        }
    }
    

Root level build.gradle

  • Google Play Billing Library(PBL) 6.xをR8と一緒に使用する場合、Android 4.4(APIレベル19)で動作しない問題が発生する可能性があります。

    • Gamebase Android SDK 2.65.0からPBL 6.2.1を使用します。
    • この問題を解決し、Android 4.4(APIレベル19)をサポートするには、プロジェクトレベル(root level)のbuild.gradleまたはsettings.gradle(AGP 7.1以上)に次の宣言を追加してください。
      buildscript {
          repositories {
              // Raw R8 releases.
              maven {
                  url("https://storage.googleapis.com/r8-releases/raw")
              }
          }
      
          dependencies {
              classpath("com.android.tools:r8:8.1.46")
          }
      }
      
  • Huawei IAPを使用するにはプロジェクトレベル(root level)のbuild.gradleまたはsettings.gradle(AGP 7.1以上)に次の宣言を追加してください。

    buildscript {
        repositories {
            ...
            // [Huawei App Gallery] Maven repository address for the HMS Core SDK.
            maven { url 'https://developer.huawei.com/repo/' }
        }
    
        dependencies {
            ...
            // [Huawei App Gallery] AppGallery Connect plugin configuration. please use the latest plugin version.
            classpath 'com.huawei.agconnect:agcp:1.6.0.300'
        }
    }
    

Define Adapters

  • 使用するGamebaseバージョン、使用する認証、決済、プッシュモジュールをbuild.gradleファイルで宣言してください。
    • Gamebaseの最新バージョンはMaven Central(LINK)で確認できます。
    • mavenCentral()保存場所を追加してください。
// >>> [Huawei App Gallery] agconnect plugin for huawei - when Native Android build
apply plugin: 'com.huawei.agconnect'

repositories {
    // >>> For Gamebase SDK
    mavenCentral()
    ...

    // >>> [Huawei App Gallery]
    maven { url 'https://developer.huawei.com/repo/' }
}

    // >>> [ONE store v21]
    maven { url 'https://repo.onestore.co.kr/repository/onestore-sdk-public' }

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    // >>> Gamebase Version
    def GAMEBASE_SDK_VERSION = 'x.x.x'

    // >>> Gamebase - Add Auth Adapter
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-google:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-gpgs-v2:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-facebook:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-appleid:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-twitter:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-naver:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-line:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-payco:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-weibo:$GAMEBASE_SDK_VERSION"

    // >>> Gamebase - Select Purchase Adapter
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-google:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-onestore-v21:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-onestore-external:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-galaxy:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-amazon:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-huawei:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-mycard:$GAMEBASE_SDK_VERSION"

    // >>> Gamebase - Select Push Adapter
    implementation "com.toast.android.gamebase:gamebase-adapter-push-fcm:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-push-adm:$GAMEBASE_SDK_VERSION"

    // >>> 次のモジュールの使用方法はサポートへお問い合わせください。
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-hangame:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-hangamejp:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-hangamejpemail:$GAMEBASE_SDK_VERSION"
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-kakaogame:$GAMEBASE_SDK_VERSION"
    // >>> [Weibo v4]
    // https://github.com/nhn/toast.gamebase.android.sample/tree/main/weibo_sdk
    implementation files('libs/openDefault-4.4.4.aar')
    implementation "com.toast.android.gamebase:gamebase-adapter-auth-weibo-v4:$GAMEBASE_SDK_VERSION"
    // >>> [ONE store v16]
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-onestore-v16:$GAMEBASE_SDK_VERSION"
    // >>> [ONE store v17]
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-onestore:$GAMEBASE_SDK_VERSION"
    // >>> [ONE store v19]
    // https://github.com/ONE-store/onestore_iap_release/tree/iap19-release/android_app_sample/app/libs
    implementation files('libs/iap_sdk-v19.01.00.aar')
    implementation "com.toast.android.gamebase:gamebase-adapter-purchase-onestore-v19:$GAMEBASE_SDK_VERSION"
    // >>> [Push Custom Receiver]
    implementation "com.toast.android.gamebase:gamebase-adapter-push-notification:$GAMEBASE_SDK_VERSION"
}

android {
    compileOptions {
        // >>> [AndroidX]
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    defaultConfig {
        // >>> [Weibo IdP]
        ndk {
            abiFilters 'armeabi' // , 'armeabi-v7a', 'arm64-v8a'
        }
    }
    }
}

Resources

Weibo IdP

  • ビルドターゲットに応じて次のURLのsoファイルをダウンロードしてプロジェクトにコピーしてください。
    • https://github.com/sinaweibosdk/weibo_android_sdk/tree/master/so
  • Android Studioビルドの場合
    • プロジェクトのsrc/main/java/jniLibsフォルダの下にコピーします。
    • Add so file to Android Studio project
  • Unityビルドの場合
    • soファイルとフォルダをAssets/Plugins/Android/libsフォルダの下にコピーします。
    • Add so file to Unity project

Huawei Store

  • AppGallery Connection構成ファイル(agconnect-services.json)をassetsフォルダに追加する必要があります。
    • AppGallery Connectにログインした後、マイプロジェクトをクリックします。
    • プロジェクトでアプリを選択します。
    • Project settings > General informationに移動します。
    • App informationからagconnect-services.jsonファイルをダウンロードします。
    • Android Studioビルドの場合
      • agconnect-services.json ファイルをプロジェクトのassetsフォルダにコピーします。
    • Unityビルドの場合
      • agconnect-services.json ファイルをプロジェクトの Assets/StreamingAssetsフォルダにコピーします。

Firebase Notification

  • Android Studioビルドの場合
  • Unityビルドの場合

    • 'Firebase Console > プロジェクト設定' からgoogle-services.jsonファイルをダウンロードし、xml変換のためのgenerate_xml_from_google_services_json.exeファイルもダウンロードした後、下記のコマンドを実行してjsonファイルを xmlファイルに変換できます。

      "{UnityProject}\Firebase\Editor\generate_xml_from_google_services_json.exe" -i "{JsonFilePath}\google-services.json" -o "{UnityProject}\Assets\Plugins\Android\res\values\google-services.xml" -p "{PackageName}"
      
    • 変換したxmlファイルは'Androidライブラリプロジェクト'にリソースとして追加する必要があります。

      • 'Androidライブラリプロジェクト'はフォルダ名に'.androidlib'を含める必要があり、AndroidManifest.xmlファイルを持っている必要があります。
      • 次の例示パスは'Androidライブラリプロジェクト'に追加したStringリソースのパスを示しています。
        • 'Assets/Plugins/Android/MyAndroidProject.androidlib/res/values/google-services.xml'
  • Unrealビルドの場合

    • UnrealのプロジェクトのGamebase Android設定GoogleServicesFilePathの値をFirebaseコンソールからダウンロードしたgoogle-services.jsonのパスに指定します。
    • Firebase関連で他のプラグインを使う時、google-services.jsonのデータをAndroidリソースにする過程がある場合、Gamebaseが処理するリソース処理と重複してビルド中にエラーが発生する場合があります。この場合、Gamebase Androidの設定でGoogleServicesFilePathの値を空白にしておけば、GamebaseはそのjsonをAndroidリソースに変換する作業を行いません。

AndroidManifest.xml

Contact

  • サポートページ(Game > Gamebase > Android SDK使用ガイド > ETC > Additional Features > Contact)でお問い合わせの際、写真やメディアを添付するために~API 21でストレージの読み取り権限宣言が必要です。

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="21"/>
    
  • Android API Level 22以上の端末でもREAD_EXTERNAL_STORAGE権限が必要な場合は、android:maxSdkVersion="21"構文を削除し、ランタイム権限リクエストを実装する必要があります。

Facebook IdP

  • Facebook SDKを初期化するためにApp IDとClient Tokenを宣言します。
    • 値を直接宣言せず、以下の例のようにresourcesを参照するように設定してください。
    • App IDは必須値ではありませんが、Client TokenはFacebook SDK v13.0から必ず入力する必要があります。
      • Client TokenはFacebook開発者サイト > 設定 > 高度な設定 > セキュリティ項目にあります。

AndroidManifest.xml

<manifest ...>
    <application ...>
        ...
        <!-- [Facebook] Configurations begin -->
        <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id" />
        <meta-data android:name="com.facebook.sdk.ClientToken" android:value="@string/facebook_client_token"/>
        <!-- [Facebook] Configurations end -->
        ...
    </application>
</manifest>

res/values/strings.xml

<resources>
    <!-- [Facebook] Facebook APP ID & Client Token -->
    <string name="facebook_app_id">123456789012345</string>
    <string name="facebook_client_token">a01234bc56de7fg89012hi3j45k67890</string>
</resources>

GPGS v2 IdP

  • GPGS v2 SDK初期化のためにApp IDを宣言します。
    • この値を直接宣言せず、下記の例のようにresourcesを参照するように設定してください。

AndroidManifest.xml

<manifest ...>
    <application ...>
        ...
        <!-- [GPGS v2] Configurations begin -->
        <meta-data android:name="com.google.android.gms.games.APP_ID" android:value="@string/game_services_project_id" />
        <!-- [GPGS v2] Configurations end -->
        ...
    </application>
</manifest>

res/values/strings.xml

<resources>
    <!-- [GPGS v2] GPGS v2 APP ID -->
    <string name="game_services_project_id">1234567890</string>
</resources>

Weibo IdP

  • Weibo IdPが正常に動作するには、applicationタグにandroid:networkSecurityConfig attributeを追加し、weibo、sina関連URLを宣言したxmlファイル名を設定する必要があります。
<application android:networkSecurityConfig="@xml/my_network_security_config"
    ...>
    ...
</application>
  • res/xml/my_network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <!-- Weibo SDK start -->
        <domain includeSubdomains="true">sina.cn</domain>
        <domain includeSubdomains="true">weibo.cn</domain>
        <domain includeSubdomains="true">weibo.com</domain>
        <domain includeSubdomains="true">sinaimg.cn</domain>
        <domain includeSubdomains="true">sinajs.cn</domain>
        <domain includeSubdomains="true">sina.com.cn</domain>
        <!-- Weibo SDK end -->
    </domain-config>
</network-security-config>

ONE Store

  • ONE storeは、全体決済画面とポップアップ決済画面をサポートします。
    • AndroidManifest.xmlにmeta-dataを追加して全体決済画面("full")またはポップアップ決済画面("popup")を選択できます。
    • meta-dataを設定しない場合はデフォルト値("full")が適用されます。
<manifest>
    ...
    <application>
        ...
        <!-- [ONE store] Configurations begin -->
        <!-- popup:ポップアップ決済画面 / full:全体決済画面 -->
        <meta-data
            android:name="iap:view_option"
            android:value="popup | full" />
        <!-- [ONE store] Configurations end -->
        ...
    </application>
</manifest>
決済画面 設定値
全体決済画面 "full"
ポップアップ決済画面 "popup"
  • Unityなどのmulti platformをビルドする時、apply pluginの代わりに下記の内容を追加すると、通常の決済が可能です。
  • agconnect-services.jsonのcp_id, app_idフィールドの値をAndroidManifest.xmlのmeta-dataに入力してください。
<meta-data  
    android:name="com.huawei.hms.client.appid"  
    android:value="appid=123456789">  
</meta-data>
<meta-data
    android:name="com.huawei.hms.client.cpid"
    android:value="cpid=1234567891234">
</meta-data>

注意:ユーザー端末にHuawei App Galleryがインストールされている時のみ正常に決済が可能です。

MyCard

  • MyCard決済連動のためにはGamebaseMyCardApplicationを使用する必要があります。 AndroidManifest.xmlに次の内容を追加してください。
<application
    android:name="com.toast.android.gamebase.purchase.mycard.GamebaseMyCardApplication"
  ...>
  ...
</application>

  • 直接Applicationを定義して使用している場合は、GamebaseMyCardApplicationを継承して使用してください。
class MyApplication: GamebaseMyCardApplication() {
    ...
}
  • 決済テストを行うにはAndroidManifest.xmlに'test_mode'を追加してください。 'test_mode'を設定していない場合のデフォルト値はfalseです。
<application>
  <meta-data android:name="iap:test_mode" android:value="true | false"/>
</application>

Notification Options

  • 次のような方法で通知オプションを設定できます。

Example

<!-- Notification priority -->
<meta-data android:name="com.toast.sdk.push.notification.default_priority"
           android:value="1"/>
<!-- Notification background color -->
<meta-data android:name="com.toast.sdk.push.notification.default_background_color"
           android:resource="@color/defaultNotificationColor"/>
<!-- LED light -->
<meta-data android:name="com.toast.sdk.push.notification.default_light_color"
           android:value="#0000ff"/>
<meta-data android:name="com.toast.sdk.push.notification.default_light_on_ms"
           android:value="0"/>
<meta-data android:name="com.toast.sdk.push.notification.default_light_off_ms"
           android:value="500"/>
<!-- Small icon -->
<meta-data android:name="com.toast.sdk.push.notification.default_small_icon"
           android:resource="@drawable/ic_notification"/>
<!-- Sound -->
<meta-data android:name="com.toast.sdk.push.notification.default_sound"
           android:value="notification_sound"/>
<!-- Vibrate pattern -->
<meta-data android:name="com.toast.sdk.push.notification.default_vibrate_pattern"
           android:resource="@array/default_vibrate_pattern"/>
<!-- Use badge icon or not -->
<meta-data android:name="com.toast.sdk.push.notification.badge_enabled"
           android:value="true"/>
<!-- Enable notification when application is foreground. -->
<meta-data android:name="com.toast.sdk.push.notification.foreground_enabled"
           android:value="false"/>
meta-data key value type description
com.toast.sdk.push.notification.default_priority int 優先順位。
以下の5つの値を設定できます。
NoticationComapt.PRIORITY_MIN : -2
NoticationComapt.PRIORITY_LOW : -1
NoticationComapt.PRIORITY_DEFAULT : 0
NoticationComapt.PRIORITY_HIGH : 1
NoticationComapt.PRIORITY_MAX : 2
com.toast.sdk.push.notification.default_background_color int 背景色。
com.toast.sdk.push.notification.default_light_color int LED色。
com.toast.sdk.push.notification.default_light_on_ms int LEDが点灯する時の時間。
com.toast.sdk.push.notification.default_light_off_ms int LEDが消える時の時間。
com.toast.sdk.push.notification.default_small_icon resource id 小さいアイコンのリソース識別子。
com.toast.sdk.push.notification.default_sound String 通知音ファイル名。
Android 8.0未満のOSでのみ動作します。
「res/raw」フォルダのmp3、wavファイル名を指定すると、通知音が変更されます。
com.toast.sdk.push.notification.default_vibrate_pattern long[] 振動のパターン。
com.toast.sdk.push.notification.badge_enabled boolean バッジアイコンの使用有無。
com.toast.sdk.push.notification.foreground_enabled boolean フォアグラウンド通知の使用有無。

Android 11

  • Android 11は、ビルド時にあらかじめ宣言されたアプリケーションでなければ、他のアプリケーションが実行されません。
  • そのため、targetSdkVersionを30以上に設定する場合には必ずAndroidManifest.xmlにqueriesタグを利用して許可するアプリケーションをあらかじめ宣言しておく必要があります。

[注意]

  • 'queries'タグは既存Android Gradle Plugin(AGP)では認識できず、ビルドが失敗します。
  • 以下のガイドおよび表を参考にして'queries'タグビルドが可能なAGPバージョンにアップグレードしてください。
If you are using
the Android Gradle
plugin version...
...upgrade to: Unity Editor
4.1.* N/A (no upgrade needed) -
4.0.* 4.0.1 -
3.6.* 3.6.4 2020.1 ~
3.5.* 3.5.4 -
3.4.* 3.4.3 2018.4.4 ~
2019.1.7 ~
3.3.* 3.3.3 -
3.2.* Not supported 2017.4.17 ~
2018.3 ~ 2018.4.3
2019.1.0 ~ 2019.1.6
3.0.* Not supported 2018.2
2.3.* Not supported 2017.3 ~ 2017.4.16
2018.1
2.1.* Not supported Unity 5
2017.1 ~ 2017.2
<manifest>
    <!-- [Android11] settings start -->
    <queries>
        <!-- [All SDK] AppToWeb Authenthcation support start -->
        <package android:name="com.android.chrome" />
        <package android:name="com.chrome.beta" />
        <package android:name="com.chrome.dev" />
        <package android:name="com.sec.android.app.sbrowser" />
        <!-- [All SDK] AppToWeb Authenthcation support end -->

        <!-- [Facebook] Configurations begin -->
        <package android:name="com.facebook.katana" />
        <!-- [Facebook] Configurations end -->

        <!-- [PAYCO/Hangame] Configurations begin -->
        <package android:name="com.nhnent.payapp" />
        <!-- [PAYCO/Hangame] Configurations end -->

        <!-- [Hangame] Configurations begin -->
        <package android:name="com.nhn.hangameotp" />
        <package android:name="com.sci.siren24.ipin" />
        <package android:name="kr.co.samsungcard.mpocket" />
        <package android:name="com.lcacApp" />
        <package android:name="com.shcard.smartpay" />
        <package android:name="com.hyundaicard.appcard" />
        <package android:name="com.kbcard.cxh.appcard" />
        <package android:name="com.hanaskcard.paycla" />
        <package android:name="kvp.jjy.MispAndroid320" />
        <package android:name="nh.smart.nhallonepay" />
        <!-- [Hangame] Configurations end -->

        <!-- [NAVER] Configurations begin -->
        <package android:name="com.nhn.android.search" />
        <!-- [NAVER] Configurations end -->

        <!-- [Weibo] Configurations begin -->
        <package android:name="com.weico.international" />
        <package android:name="com.sina.weibo" />
        <!-- [Weibo] Configurations end -->

        <!-- [ONE store] Configurations begin -->
        <!-- Android 2.60.0以上からはONE store queries宣言が必要ありません。 -->
        <intent>
            <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
        </intent>
        <intent>
            <action android:name="android.intent.action.VIEW" />
            <data android:scheme="onestore" />
        </intent>
        <!-- [ONE store] Configurations end -->

        <!-- [Galaxy store] Configurations begin -->
        <package android:name="com.sec.android.app.samsungapps" />
        <!-- [Galaxy store] Configurations end -->
    </queries>

    <!-- [Amazon Appstore] Configuration begin -->
    <uses-permission
        android:name="android.permission.QUERY_ALL_PACKAGES"
        tools:ignore="QueryAllPackagesPermission" />
    <!-- [Amazon Appstore] Configuration end -->

    <!-- [Android11] settings end -->
</manifest>
  • Amazon Appstoreでは「queries」要素の代わりにQUERY_ALL_PACKAGES権限を追加します。

[注意]

  • QUERY_ALL_PACKAGES権限はAmazon Appstore専用宣言のため、Google Playビルド時には適用しないようにご注意ください。

Proguard

  • Gamebaseで推奨するflowは、Sample Projectにも同じように実装されています。
  • ゲームの開始時にGamebaseクライアントSDKを初期化し、ログインが成功したら、決済の再処理を始めてプッシュトークンを登録してください。

overview flow

3rd-Party Provider SDK Guide

API Reference

  • API Referenceは、SDKの中に含まれています。

API Deprecate Governance

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

  • 5回以上のマイナーバージョンアップデート
    • Gamebaseバージョン形式 - XX.YY.ZZ
      • XX:Major
      • YY:Minor
      • ZZ:Hotfix
  • 最低5ヶ月経過
TOP