버전 비교

  • 이 줄이 추가되었습니다.
  • 이 줄이 삭제되었습니다.
  • 서식이 변경되었습니다.

1.1. Unity SDK 설치

...

참고사항

권장 버전을 사용하지 않을 경우, 아래와 같은 문제가 있습니다.

  • 게임외 앱에서 플레이 중인 음악 볼륨이 작아지는 유니티 버그가 있습니다.

  • 에디터 환경에서 웹소켓 연결이 멈추는 유니티 버그가 있습니다. 이 버그는 에디터 환경에서만 발생하는 이슈로, 안드로이드나 iOS빌드에서는 문제가 없습니다.

  • 1.1.3.11. 항목에서 유니티 버전별 android plugin tools version 사용 방법 참조

 

1.1.2. SDK 파일 구성

전달받은 KakaoGameSDK_Unity_[버전].zip 파일은 다음과 같은 파일들로 구성되어 있습니다.

...

  1. Unity 패키지 파일 import가 되면, Unity3d툴 메뉴에 Kakao라는 메뉴가 새로 생긴걸 확인할 수 있습니다.
     |

    Image Modified
  2. ConfigureSDK를 클릭하면, 아래와 같이 카카오게임 SDK 설정이 가능한 인스펙터가 열립니다. 

     

...

  1. 아래 그림과 같이 카카오게임 속성을 설정하도록 합니다.
     

    Image Modified
  2. 설정 이후 잘 설정되었는지 확인하기 위해 Check configuration setting 버튼을 클릭합니다.

    Image Modified
  3. 잘 설정되어있지 않을 경우, 아래와 같이 원인 문구가 나옵니다.
    아래의 경우는 유효하지 않은 앱아이디를 사용하고 있어서 발생합니다.
    기술PM님이 전달받은 앱아이디가 잘 등록되었는지 확인합니다. 잘 등록되어 있을 경우, 기술PM님께 문의부탁드립니다.

    Image Modified


     

1.1.3.4. 카카오 멀티앱 로그인 기능 사용시 필요한 설정

...

  1. 푸시를 사용하지 않으므로, Push Setting 아래의 Push 체크 박스를 클릭합니다.

    Image Modified
  2. 3.7.0SDK 이후 버전을 사용할 경우) 유니티 상의 gradle script에서도 해당 스크립트 부분을 제거해준다.


...

  1. 구글 인증을 사용할 경우, Google 체크 박스를 클릭합니다.

     

    Image Modified
  2. iOS앱에서 구글 인증을 할 경우, iOS 클라이언트 ID를 설정합니다.

    Image Modified
  3. 안드로이드앱에서 구글 인증하거나, 구글 게임 인증을 사용할 경우, Webapp Client ID를 설정합니다.

    Image Modified
  4. 구글 인증시, 기본 퍼미션외 추가로 더 사용자의 동의를 받을 퍼미션이 있다면, Add버튼을 눌러서 추가하도록 합니다. 없을 경우, 해당 과정은 생략합니다.

    Image Modified


1.1.3.7. 페이스북 정보 설정

...

  1. 페이스북 인증을 사용할 경우, Facebook 체크 박스를 클릭합니다.

    Image Modified

  2. 페이스북 App Key를 등록합니다.

    Image Modified
  3. 페이스북 App Title을 등록합니다. 페이스북 로그인창이 뜰때, 노출되는 타이틀입니다.

    Image Modified
  4. 페이스북 인증시, 기본 퍼미션외 추가로 더 사용자의 동의를 받을 퍼미션이 있다면, Add버튼을 눌러서 추가하도록 합니다. 없을 경우, 해당 과정은 생략합니다.

    Image Modified

참고사항

페이스북에서 제공하는 SDK 에서는 인증 시 Read 퍼미션과 Publish 퍼미션을 동시에 요청할 수 없기 때문에 카카오 SDK를 통한 페이스북 인증 시에는 Read 퍼미션만 추가하 실 수 있습니다.

(Publish 퍼미션: "publish" 나 "manage" 로 시작하는 퍼미션 이나 "ads_management", "create_event", "rsvp_event" 등)

때문에 Publish 관련 기능이 필요한 경우에는 Publish 퍼미션으로 추가 인증을 받거나 ShareDialog 같은 페이스북 SDK에서 제공하는 Publish API 를 사용하셔야 합니다.

...

1.1.3.10. Android Permission 설정

  1. unitypackage를 import 후에 Assets/Plugins/Android/AndroidManifest.xml 파일에 게임에서 사용할 permission을 추가

    1. <uses-permission android:name="android.permission.XXXXXX" /> 형태로 추가

...

  1. Unity3d툴에서 File -> Build Settings... 메뉴를 선택합니다.

  2. 아래와 같이 "Build Settings"창에서 Platfrom을 Android로 설정하고, "Player Settings..."버튼을 클릭합니다.

    Image Modified
  3. 카카오게임 SDK의 안드로이드 최소 지원 SDK 버전은 15입니다. Settings for Android -> Other Settings -> Minimum API Level을 15이상으로 설정합니다.

    Image Modified
  4. Build 버튼을 클릭하여 빌드합니다.

...

  1. Unity3d툴에서 File -> Build Settings... 메뉴를 선택합니다.

  2. 3.7.0이후 버전 부터는 Android Gradle build를 지원합니다. Build System을 Gradle(New)로 선택합니다.

    Image Modified
  3. 각 앱별로 넣어야 할 설정파일들이 있어서 바로 apk 빌드가 아닌 Android Studio로 Export Project를 선택합니다.

    Image Modified
  4. Export 버튼을 클릭하여 Android Studio Project를 Export 합니다.

1.1.3.13. Android 빌드 설정 및 빌드 (3.8.0 이후)

  1. 3.8.0 버전 부터는 별도의 프로젝트 Export 없이 바로 apk 빌드를 지원합니다.

    1. 다만, apk 빌드를 지원할 시에는 SDK 에서 제공하는 Assets/Plugins/Android/mainTemplate.gradle 파일을 수정하면 안 됩니다.(추가하고 싶은 라이브러리나 리소스 추가하는 것은 상관 없습니다.)

    2. apk 빌드를 지원하기 위해서는 유니티에 포함된 gradle library 버전이 맞아야 하기 때문에 권장 유니티 버전을 사용하셔야 합니다.

      1. 유니티 내 안드로이드 Gradle 버전 확인

        1. 유니티 설치폴더/PlaybackEngines/AndroidPlayer/Tools/gradle/lib/gradle-cli-{VERSION}.jar -> 해당 버전이 유니티에서 사용하는 gradle 버전

      2. gradle 버전별 안드로이드 플러그인 버전 사용 가이드 (https://developer.android.com/studio/releases/gradle-plugin  참고)

        1. gradle 버전에 맞는 plugin 버전 사용

          Image Modified
        2. 예) gradle 2.14 버전 사용 -> classpath 'com.android.tools.build:gradle:2.1.0 형태로 설정 

1.1.3.14. Android 빌드 설정 시 Http 사용 설정

...

  1. Kakao SDK v3.8.3 이상 버전 사용 필수

    1. Unity Inspector 내에 Etc Setting(Use as needed) -> Domains to use HTTP(Android) 항목에 Add 버튼을 통해 게임에서 사용할 http domain을 추가

      Image Modified

1.1.3.15. Android 빌드 시에 추가 설정사항(윈도우 환경에서 빌드시에만 해당)

...

  1. Unity3d툴에서 File -> Build Settings... 메뉴를 선택합니다.
     

  2. 아래와 같이 "Build Settings"창에서 Platfrom을 iOS로 설정하고, "Player Settings..."버튼을 클릭합니다.
     

    Image Modified
  3. 카카오게임 SDK의 iOS 최소 지원 버전은 8.0입니다.
     

    Image Modified


     

  4. Build 버튼을 클릭하여 빌드합니다. 빌드가 성공하면, Xcode 프로젝트가 생성됩니다.
     

  5. Xcode 프로젝트를 열고, "Capabilities" 탭의 "Keychain Sharing" 옵션을 ON으로 바꾸고 속성에 KakaoGameAccessGroup을 추가합니다.

    Image Modified

 

1.1.3.17. 게임 내 지원 언어 리소스

...

  1. iOS

    1. Unitypackage import한 폴더 기준으로 Assets > Kakaogame > iOSPlugins > KakaoGameFramwork > KakaoGameResources.bundle 파일을 찾아서 '패키지 내용보기' 를 클릭한다.

      Image Modified
    2. 제거 하고 싶은 언어의 폴더를 삭제한다.

      Image Modified
  2. Android

    1. Unitypackage import한 폴더 기준으로 Assets > Kakaogame > AndroidPlugins > KakaoGameSDK.plugin 파일을 찾아서 '패키지 내용보기' 를 클릭한다.

      Image Modified
    2. 제거하고 싶은 폴더의 xml 파일을 삭제한다. 예)일본어를 삭제하려면 res > values-ja 아래에 kakao_game_sdk_strings.xml / zinny_sdk_strings.xml 파일 두개를 삭제한다.

      Image Modified
      1. 주의) values폴더에는 영어 리소스가 포함된 xml 파일이 있는데, 언어 리소스 외에 다른 파일들은 삭제하지 않도록 주의한다.

        Image Modified


1.1.4. 유니티 에디터 로그인

...

  1. 우선 카카오 개발자 사이트 내에서 카카오 게임 앱 정보에서 웹 플랫폼을 활성화 시킨다. (처음에 앱등록을 한 상태에서 기본적으로 활성화 되지 않으므로 웹 플랫폼을 활성화 시켜야 함)

    Image Modified
  2. 활성화 된 웹 플랫폼 링크를 클릭하면 아래와 같은 화면이 나오는데, 아래의 화면에서 사이트 도메인에 "https://dist-test-sdk.s3.amazonaws.com"을 추가해준다.
    그리고 앱 키 정보에 나열된 것들 중에서 JavaScript 키 정보가 있는데, 해당 정보를 다음 단계에서 사용한다.

    Image Modified
  3. 그리고 2 단계에서 언급했던 JavaScript Key를 유니티 에디터 인스펙터 상에 Editor Setting > Use Kakao Editor Login 항목(3.4.0부터 추가됨)을 체크하고 InputField에 입력한다.

  4. 이렇게 하면 유니티 에디터 상에서 카카오 로그인을 사용할 준비는 다 되었다.

...

  1. 로그인시에 Start 호출 → Login 호출 후에 지원하는 IDP 로그인 창 노출 확인 후 카카오 로그인 선택

    Image Modified
  2. 카카오 인증 정보를 입력 받을 수 있는 UI가 노출됨과 동시에 PC / Mac에 설정된 default web browser로 카카오 로그인 페이지 노출

    Image ModifiedImage Modified
  3. 로그인 페이지에서 카카오 계정으로 로그인 버튼을 누르면 최초에 카카오 계정으로 로그인 팝업이 떠서 로그인이 가능하고 웹 페이지 캐싱에 의해 로그인 한 적이 있으면 바로 로그인 한 응답이 웹 페이지에 노출

    Image Modified
  4. 웹페이지에 응답으로 노출된 정보를 모두 복사해서 유니티 에디터 상으로 다시 돌아와서 입력창에 입력 후에 OK 버튼

  5. 위와 같은 과정을 다 거치면 카카오 인증이 완료되고, 인증된 정보 에디터 환경(C# SDK)에서 해당 정보를 가지고 지니 플랫폼에 로그인해서 정상적으로 playerId와 zat발급 및 로그인 프로세스 완료.

...