Unity3D GCM java.lang.NoClassDefFoundError: org.json.simple.JSONValue

FATAL EXCEPTION: AsyncTask #1
java.lang.Error: FATAL EXCEPTION [AsyncTask #1]
Unity version     : 4.1.2f1
Device model      : Acer A500
Device fingerprint: acer/a500_ww_cus1/picasso:4.0.3/IML74K/xxxxxxx:user/release-keys
Caused by: java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:278)
at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.NoClassDefFoundError: org.json.simple.JSONValue
at com.google.android.gcm.server.Sender.sendNoRetry(Sender.java:358)
at com.google.android.gcm.server.Sender.send(Sender.java:261)
at com.test.gcm.MainActivity$GCMPushTask.doInBackground(MainActivity.java:58)
at com.test.gcm.MainActivity$GCMPushTask.doInBackground(MainActivity.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:264)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
... 5 more

 유니티3D 안드로이드에 GCM 서버부분 연동중 위와같은 에러가 발생했습니다. 이제는 뭐 하도 많이 본 에러 메세지라 놀랍지도 않네요.

 푸시를 여러명에게 보내기 처리중에 gcm-server 내부에서 send 처리하는데 있어 json을 사용하는 것 같습니다. 설치된 gcm sdk의 gcm-server\lib 디렉터리의 json_simple-1.1.jar 파일을 유니티3D의 플러그인 디렉터리에 복사해줍니다.

 유니티3D 프로젝트가 아니고 일반 안드로이드 프로젝트였다면 Java Build Path에서 Add External JARs로 추가했겠죠.

댓글

이 블로그의 인기 게시물

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

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

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