Unity3D Android UCGame SDK Integration - 1. 준비작업

 중국 GameNoll91 마켓Baidu Duoku에 이어 이번에는 UCGame SDK라는 것을 연동을 정리해보겠습니다. 이번이 마지막이길...


1. 유니티3D 안드로이드 플러그인 기본 작업

 유니티3D 안드로이드 플러그인 프로젝트를 만듭니다. 역시나 패키지명에 uc가 포함되어야 합니다. 중국 SDK는 다 이런걸 요구하네요.


2. UCGame SDK 임포트


 압축해제 후 alipay_msp.jar, UCGameSDK2.3.4.jar 파일을 스샷과 같이 자바 빌드 패스 -> Libraries -> Add External JARs를 통해 가져옵니다.


3. AndroidManifest.xml 수정

    <!-- UCGame SDK -->
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.GET_TASKS" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

<application
...
...
        <!-- UCGame SDK -->
        <activity android:configChanges="keyboardHidden|orientation|screenSize"
                  android:label="@string/app_name"
                  android:name="cn.uc.gamesdk.view.SdkWebActivity"
                  android:theme="@android:style/Theme.Translucent"
                  android:windowSoftInputMode="adjustResize" >
            <intent-filter >
                <action android:name="cn.uc.gamesdk.sdkweb" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
</application>

 유니티3D 플러그인 디렉터리에 복사한 AndroidManifest.xml에 위와같은 것을 추가합니다.


4. UCGame SDK 플러그인 디렉터리에 복사


 유니티3D 플러그인 디렉터리에 안드로이드 프로젝트에서 가져왔던 2개의 jar 파일을 복사해줍니다. 그리고 java.lang.RuntimeException: eglSwapBuffers failed: EGL_BAD_CURRENT_SURFACE 에러를 대비해서 UCGameSDK.jar 파일 안에 있는 assets도 복사해줍니다. UCGamePlugin.jar는 현재 만들고 있는 플러그인 파일입니다.

 다음에는 유니티3D 안드로이드 UCGame SDK Init, Login, Logout 처리를 정리해보겠습니다.

댓글

이 블로그의 인기 게시물

CMake Windows에 설치하기

'xxx.exe' 프로그램을 시작할 수 없습니다. 지정된 파일을 찾을 수 없습니다.

크로스 스레드 작업이 잘못되었습니다. xxx 컨트롤이 자신이 만들어진 스레드가 아닌 스레드에서 액세스되었습니다