Unity3D Android GCM Integration - 1. 준비작업

 구글의 푸시 기능을 사용하기 위해 구글 API 콘솔에 API 프로젝트를 만들어 Key 생성까지 해봤습니다. 이번에는 유니티3D 안드로이드 GCM(Google Cloud Messaging) 연동을 정리해보겠습니다.


1. GCM 프로젝트 생성

 구글 API 콘솔에서 프로젝트를 만들고 Key를 생성합니다.


2. 안드로이드 플러그인 프로젝트 생성


 유니티3D 안드로이드 플러그인 Jar 프로젝트를 생성합니다. 저는 com.test.gcm 이라고 만들었습니다. GCM은 안드로이드 2.2부터 지원하므로 최소 요구 SDK를 API 8로 설정해줍니다.


3. Google Cloud Messaging for Android Library 설치 및 임포트

 안드로이드 SDK 메니져를 열어서 Extras에 있는 Google Cloud Messaging for Android Library를 인스톨합니다.

 GCM은 SDK디렉터리/extras/google/gcm/ 에 설치됩니다. 먼저 클라이언트부터 할 것이니 gcm-client/dist에 있는 gcm.jar 파일을 Java Build Path의 Add External JARs로 추가합니다.


4. AndroidManifest 수정 및 Jar파일 복사

    <!-- GCM 퍼미션 -->
    <permission android:name="com.test.gcm.permission.C2D_MESSAGE" android:protectionLevel="signature" />
    <uses-permission android:name="com.test.gcm.permission.C2D_MESSAGE" />
    <!-- GCM 리시버 퍼미션 -->
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
    <!-- 구글 계정 퍼미션 -->
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    <!-- 메시지 수신시 wake up을 위한 퍼미션 -->
    <uses-permission android:name="android.permission.WAKE_LOCK"/>
    <!-- 인터넷 접속 퍼미션 -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <!-- 진동을 위한 퍼미션 -->

    <uses-permission android:name="android.permission.VIBRATE"/>

<application>
...
        <!-- GCM 리시버 -->
        <receiver
            android:name="com.google.android.gcm.GCMBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND">
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
                <action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
                <category android:name="com.test.gcm"/>
            </intent-filter>
        </receiver>
        <!-- GCM 리시버에서 돌리는 서비스 -->
        <service android:name=".GCMIntentService"></service>
...
</application>

 유니티3D Plugins/Android에 복사한 AndroidManifest.xml을 위와같은 것들을 추가해줍니다. 붉은색 부분은 각자의 패키지명으로 해줍니다.

 마지막으로 gcm-client/dist에 있는 gcm.jar 파일을 유니티 안드로이드 플러그인 디렉터리에 복사해줍니다.

 이것으로 유니티3D 안드로이드 GCM 연동 준비작업이 끝났습니다. 다음에는 GCM 클라이언트 처리 부분을 정리하겠습니다.

댓글

이 블로그의 인기 게시물

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

goorm IDE에서 node.js 프로젝트로 Hello World Simple Server 만들어 띄워보기

애드센스 수익을 웨스턴 유니온으로 수표대신 현금으로 지급 받아보자.