Game > Gamebase > Upgrade Guide
2.19.0
Android
- Gamebase Android SDK 2.19.0 에서 Weibo IdP 로그인과 다른 IdP 로그인을 번갈아가며 호출하는 경우 크래쉬가 발생합니다.
- Weibo IdP 를 사용한다면 이슈가 수정된 Gamebase Android SDK 2.19.1 을 사용하시기 바랍니다.
2.18.2
Android
Removed APIs
- Gamebase Android SDK 2.6.0 에서 deprecated 되었던 아래 함수들이 제거되었습니다.
- GamebaseConfiguration.Builder.setFCMSenderId()
- GamebaseConfiguration.Builder.setTencentAccessKey()
- GamebaseConfiguration.Builder.setTencentAccessId()
2.18.0
Android
- Gamebase Android SDK 2.18.0 에서 Google 아이템 결제를 호출하면 크래쉬가 발생합니다.
- 이슈가 수정된 Gamebase Android SDK 2.18.1 을 사용하시기 바랍니다.
2.17.0
Android
- Gamebase Android SDK 2.17.0 에서 Gamebase.ImageNotice.showImageNotices API 를 호출하면 크래쉬가 발생합니다.
- 2.17.0 의 크래쉬 및 OS 5.0~6.0 에서 커스텀 스킴 이벤트가 동작하지 않는 이슈가 수정된 Gamebase Android SDK 2.17.4 를 사용하시기 바랍니다.
2.15.1
iOS
- SDK에서 정의한 타입 GamebaseEventCategory를 NSString 대신에 사용할 경우, 해당 타입을 TCGBGamebaseEventCategory로 수정해야 합니다.
2.15.0
Android
- gamebase-adapter-purchase-google 을 사용한다면 Gamebase SDK 2.15.0 미만 버전에서 2.15.0 이상으로 업그레이드 하는 경우 반드시 이전 버전의 Game Client Version 을 업데이트 필수 로 설정해야 합니다.
- Google Billing Client 모듈이 업데이트 되어, 여러개의 단말기에서 서로 다른 Billing Client 버전이 적용된 상태에서 아이템을 구매하는 경우 오류가 발생했을때 재처리에 문제가 생길 수 있기 때문입니다.
2.6.0
Unity
Android Limitation
- Android Support Library 버전이 28.0.0으로 올라, Unity 5, Unity 2017.1, Unity 2017.2에서는 Android 빌드에 실패합니다.
- Unity 2017.3 미만 버전의 에디터를 사용한다면 Unity 2017.3 이상 버전을 설치하고 'Editor/Data/PlaybackEngines/AndroidPlayer/Tools/gradle/lib' 폴더를 복사해 사용 중인 Unity Editor의 동일한 경로에 덮어씁니다. 그리고 mainTemplate.gradle 파일을 아래와 같이 수정하시기 바랍니다.
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
buildscript {
repositories {
jcenter()
// >>> For download Gradle Android Plugin
maven {
url 'https://maven.google.com'
}
}
dependencies {
//classpath 'com.android.tools.build:gradle:2.1.0'
// >>> Update Gradle Android Plugin version
classpath 'com.android.tools.build:gradle:2.3.0'
}
}
Firebase Push
- Firebase Cloud Messaging 을 사용하는 경우, Firebase Console 에서 다운로드 받은 google-services.json 파일을 xml 리소스로 변환하여 프로젝트에 포함하여야 Push 가 정상동작 합니다.
- Gamebase 2.5.0 이전 버전에서는 xml 리소스가 없어도 Push 가 동작했지만, Gamebase 2.6.0 이상부터는 xml 리소스가 반드시 필요합니다.
- 아래 가이드를 참고하여 구현하시기 바랍니다.
Standalone
- Removed Japan Purchase
- 일본 결제 서비스가 종료되었습니다.
- GamebaseUnitySDK_IAPAdapter를 사용 중이면 아래 폴더를 직접 삭제해 주시기 바랍니다.
- Asset/Toast/Common
- Asset/Toast/Core
- Asset/Toast/IAP
- Asset/Toast/Standalone
Android
Limitation
- minSdkVersion이 15(IceCreamSandwichMR1, 4.0.3)에서 16(Jelly Bean, 4.1)으로 변경되었습니다.
- OS 4.1 미만의 단말기에서는 제대로 동작하지 않을 수 있으니 프로젝트의 minSdkVersion이 15인 경우, 16으로 변경해 주시기 바랍니다.
Removed APIs
- 제거된 함수는 다음과 같습니다. 대체 함수로 변경하시기 바랍니다.
- Gamebase.getAuthBanInfo()가 제거되었습니다. Gamebase.getBanInfo()로 변경하세요.
- Gamebase.getLanguageCode()가 제거되었습니다. Gamebase.getDeviceLanguageCode()로 변경하세요.
- new GamebaseConfiguration.Builder(void)가 제거되었습니다. GamebaseConfiguration.newBuilder()로 변경하세요.
- new GamebaseConfiguration.Builder.setAppId()가 제거되었습니다. GamebaseConfiguration.newBuilder()로 변경하세요.
- new GamebaseConfiguration.Builder.setAppVersion()이 제거되었습니다. GamebaseConfiguration.newBuilder()로 변경하세요.
Changed/Deprecated APIs
- Gamebase.activeApp()은 자동으로 호출되므로 더 이상 호출하지 않아도 됩니다.
- Gamebase.initialize()의 인자로 필요한 GamebaseConfiguration의 생성 방법이 변경되었습니다.
- new GamebaseConfiguration.Builder(String, String) 대신 GamebaseConfiguration.newBuilder()를 호출하세요.
- LaunchingStatus.isPlayable()은 더 이상 호출하지 마세요.
- Purchase
- Store Code는 변경할 수 없으므로 GamebaseConfiguration.newBuilder()에서 Store Code를 전달해야 합니다.
- Gamebase.Purchase.getStoreCode()/Gamebase.Purchase.setStoreCode()는 제거될 예정입니다. 더 이상 사용하지 마세요.
- Gamebase.Purchase.requestRetryTransaction()은 이제 호출하지 않아도 됩니다.
- Push
- Gamebase Android SDK 2.6.0 이상부터는 푸시 메시지를 발송할 때, Gamebase 콘솔의 푸시 탭의 메뉴를 이용해 발송해야 합니다.
- Gamebase Android SDK 2.6.0 미만이라면 Gamebase 콘솔의 푸시(구) 탭에서 푸시를 발송해야 합니다.
- GamebaseConfiguration.Builder.setFCMSenderId()는 이제 호출하지 않아도 됩니다.
- GamebaseConfiguration.Builder.setTencentAccessKey(), GamebaseConfiguration.Builder.setTencentAccessId()를 호출하는 경우 API 호출을 제거하고 build.gradle에 다음과 같이 선언해야 합니다.
android {
defaultConfig {
...
// >>> For Tencent Push Notification
manifestPlaceholders = [
XG_ACCESS_ID : "1234567890",
XG_ACCESS_KEY : "ABCDEFGHIJKL",
]
}
}
2.4.4
Unity
- Setting Tool이 업데이트되었습니다.
- 폴더 구조가 변경되어, 이전 버전의 Setting Tool을 완전히 삭제한 후 재설치해야 합니다.
2.2.2
Unity
- GamebaseUnitySDKSettings 클래스의 storeCodeAOS 변수명이 storeCodeAndroid로 변경되었습니다.
- storeCodeAOS를 참조하여 Store Code를 정의하는 코드나 Prefab이 있다면 변수 참조에 실패하므로 storeCodeAndroid 변수로 변경하시기 바랍니다.
2.2.0
Unity
- GamebaseMainActivity의 Package Name이 변경되었습니다.
- AndroidManifest.xml의 MainActivity 선언을 아래와 같이 변경하지 않으면 크래시가 발생합니다.
- com.toast.gamebase.activity.GamebaseMainActivity -> com.toast.android.gamebase.activity.GamebaseMainActivity
<manifest>
...
<application>
...
<activity android:name="com.toast.android.gamebase.activity.GamebaseMainActivity"
android:launchMode="singleTask"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
...
</application>
...
</manifest>
2.1.0
Common
Removed APIs
- 사용되지 않는 TransferKey 기능이 제거되었습니다.