Unity3D Android 91 Market Platform SDK Integration - 1. 준비작업


 유니티3D 안드로이드에 중국 GameNoll의 SDK 연동을 했었습니다. 이번에는 중국에서 안즈와, 360마켓, 완또우자등과 함께 중국 안드로이드 시장을 대표하는 앱 마켓인 91.com의 마켓 플랫폼 SDK 연동을 위한 준비작업에 대해 포스팅해봅니다. GameNoll과 마찬가지로 해당 SDK 설치나 다운로드는 저도 제가 직접 받은게 아닌 업무적인 절차로 처리된 것을 받은것이라 이 부분은 잘 모르겠네요. SDK를 이미 가지고 있고 압축 해제까지 했다는 전제로 진행합니다.


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


 유니티3D 안드로이드 Jar 플러그인 프로젝트를 만들어 기본적인 처리를 합니다. 전 스샷과 같이 패키지명을 com.wwforever.plugin91 이라고 했습니다. 참고로 91측에서 요구하는 필수 개발사항중 패키지명에 91이 위 스샷과 같이 꼭 포함 되어야한다고 하네요.


 다음으로 91SDK 압축해제 후 SDK_lib\91SDK_LibProject\libs 안에있는 NdComPlatform.jar 파일을 Java Build Path의 Add External JARs로 추가합니다.


2. AndroidManifest.xml 수정

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
<uses-permission android:name="android.permission.GET_TASKS"></uses-permission>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"></uses-permission>

 유저 퍼미션을 추가합니다.

<activity android:configchanges="orientation|keyboardHidden|navigation|screenSize" android:launchmode="singleTask" android:name="com.nd.commplatform.activity.SNSControlCenterActivity" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:windowbackground="@null" android:windowsoftinputmode="adjustPan"></activity>

<activity android:configchanges="orientation|keyboardHidden|navigation|screenSize" android:launchmode="singleTask" android:name="com.nd.commplatform.activity.SNSLoginActivity" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:windowbackground="@null" android:windowsoftinputmode="adjustPan"></activity>

<activity android:configchanges="orientation|keyboardHidden|navigation|screenSize" android:name="com.nd.commplatform.activity.SNSAppPromotionActivity" android:theme="@android:style/Theme.NoTitleBar" android:windowbackground="@null" android:windowsoftinputmode="adjustPan"></activity>

<service android:enabled="true" android:exported="false" android:name="com.nd.commplatform.service.NdDownloadService" android:process=":com.nd.commplatform.download"></service>

<receiver android:exported="false" android:name="com.nd.commplatform.versionupdate.ND2VersionUpdateNotify" android:process="android.intent.nd.sns.commplatform.versionupdate"></receiver>

<service android:exported="false" android:name="com.nd.commplatform.versionupdate.ND2VersionUpdateService" android:process="android.intent.nd.sns.commplatform.versionupdate"></service>

<service android:enabled="true" android:exported="false" android:name="com.nd.commplatform.service.NdNewMessageNotification"></service>

<application>과 </application>에 activity와 service, receiver를 추가합니다.

 유니티3D 안드로이드 플러그인 디렉터리에 복사한 AndroidManifest.xml에 위 내용을 추가합니다.


3. 91.com Platform SDK 복사

 유니티3D 플러그인 디렉터리에 SDK_lib\91SDK_LibProject\libs 에 있는 NdComPlatform.jar 파일과 res 디렉터리를 위와같이 복사합니다. res를 복사하지 않으면 android.content.res.Resources$NotFoundException: Resource ID #0x0 에러가 발생할 수 있습니다.

 다음에는 91 플랫폼 SDK Init, Login, Logout 처리를 정리해보겠습니다.

댓글

이 블로그의 인기 게시물

CMake Windows에 설치하기

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

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