KakaoGame SDK for Unity Upgrade Guide

Upgrading the Unity SDK to 3.19.0

Upgrading the Unity SDK to 3.15.0

KakaoGameSDK

As newtonsoft-json is used for internal logic, you need to install the json package yourself.

https://kakaogames.atlassian.net/wiki/spaces/KS3GFC/pages/413468804/1.1.+Unity+SDK+Installation#1.1.3.9.-Newtonsoft.Json-Installation-(SDK-3.15.0-or-later)

The Facebook SDK has been updated, so adding the Facebook Client Token has been changed to be mandatory.

It has been added so that you can set the Facebook Client Token in the Editor.

KakaoGameSDK(Android)

The SDK automatically changes the main activity to KGUnityPlayerActivity.

To change the main activity, you can open KGSharedData.json and set the customManifest to true

Upgrading the Unity SDK to 3.14.6

KakaoGameSDK(Editor)

The URL required for the Kakao Editor login has been changed from https://dist-test-sdk.s3.amazonaws.com to https://kakao-sdk-release.s3.amazonaws.com. You must register https://kakao-sdk-release.s3.amazonaws.com on the Kakao Developer site.

Upgrading the Unity SDK to 3.14.0

KakaoGameSDK(iOS)

The script is added when building the project to eliminate manual work.

Upgrading the Android SDK to 3.13.3

kakaoGameSDK

  • Behavior Changes on Android 12

  • In SDK 3.13.3, you should modify your settings to support Android 12 Behavior.

    • explictly-declared value for android:exported

      • Safer component exporting

      • Changed AndroidManifest.xml

        • Main Activity, AuthCodeHandlerActivity, AgeAuthActivity

          • declare android:exported=”true”

        • KGFirebaseMsgService

          • declare android:exported=”false”

    • Changed compileSdkVersion, targetSdkVersion to 31

    • Changed Android Gradle Plugin Version to 4.0.1 and Gradle Version to 6.1.1Upgrading the Unity SDK to 3.13.3

KakaoGameSDK(Android)

  1. Gradle Version

    1. If you are using Unity 2020.3.15f1, 2021.1.16f1 or later, no other settings required

    2. Changed Android gradle version to 6.1.1

      1. Gradle 6.1.1 download

      2. Set the downloaded gradle 6.1.1 folder in Unity.

        1. After downloading the gradle to another place, set the gradle folder in the Unity settings.(Preferences > External Tools > Android > Gradle Installed with Unity)

Upgrading the Unity SDK from 3.10.x to 3.10.11

KakaoGameSDK(iOS)

  • Starting from version 3.10.11, iOS framework was installed to install iOS framework through cocoapod when building ios.

    • Can install KakaoGame related framework through cocoapods

    • Basic compatible version guide for 3rd-party framework facebook / google framework

    • Or it can be set so that the developer can apply the desired version

  • Guide

    1. Select Unity menu> Assets> External Dependency Manager> iOS Resolver> Settings
       

       

    2. Cocoapods Integration> Select Xcode workspace> OK

       

    3. Specify the framework version to install as cocoapods in Assets/Kakaogame/Editor/KakaoGameDependencies.xml file

      1. Packages that are distributed are prepared based on the version that is linked to the base.

      2. You can modify and apply the version desired by the developer within a compatible range

        KakaoGame Dependencies

        <?xml version="1.0" encoding="utf-8"?> <dependencies>     <iosPods>         <iosPod name="FBSDKCoreKit" version="5.5.0" />         <iosPod name="FBSDKLoginKit" version="5.5.0" />         <iosPod name="FBSDKShareKit" version="5.5.0" />           <iosPod name="GoogleSignIn" version="5.0.2" />           <iosPod name="KakaoGameSDK/KakaoGame" version="3.10.11" />         <iosPod name="KakaoGameSDK/KakaoGameFacebook" version="3.10.11" />         <iosPod name="KakaoGameSDK/KakaoGameGoogle" version="3.10.11" />         <iosPod name="KakaoGameSDK/KakaoGameKakao" version="3.10.11" />     </iosPods> </dependencies>
      3. ex) Although FacebookSDK is specified as 5.5.0, it is okay to apply 5.6.0, but 6.0.0, which is a major version change, cannot be changed.

Additional guide for using cocoapods with Unity 2019.3

  • Installing via cocoapods installs the libraries specified in the Pods project in the Pods project under the Xcode workspace

  • The library is successfully linked to the application project, Resources are linked to the UnityFramework target, not the application, so the resources used in the SDK are not displayed.

  • So you have to manually add that resource to your application (Unity-iPhone) target (see screenshot below)

    1. Step 1) Unity-iPhone target > Copy Bundle Resources > Click +

    2. Step 2)Click Add Other...

    3. Step 3) Click Pods/KakaoGamePublishingSDK/KakaoGameFramework/KakaoGameResources.bundle file manually