Cocos2d-x 를 이용해서 게임 개발을 하다보면
안드로이드와 연동해서 개발해야 하는 경우가 생긴다.
이때,
안드로이드 네이티브와 연동하기 위해
Cocos2d-x 에서 안드로이드로 함수를 호출해야 하는 경우가 생긴다.
Cocos2d-x (C++)에서
안드로이드 (Java) 로 함수를 호출하고 싶을때 하는 방법.
일단 글을 적기에 앞서서
이 부분에 대해 참조할 만한 코드가 이미 있는데.
( Cocox2d-x 3.2 버전 기준 )
프로젝트 폴더 / cocos2d / cocos / platform / android / jni
폴더 안에
Java_org_cocos2dx_lib_Cocos2dxBitmap.cpp
Java_org_cocos2dx_lib_Cocos2dxHelper.cpp
파일들을 보시고 참조하시면 됩니다.
본론으로 돌아와서
Java 함수를 호출하고 싶은 부분에
아래와 같이 코드를 작성해 줍니다.
첫번째는
Java 함수가 들어있는 패키지와 클래스 이름을,
두번째는
호출할 함수의 이름을,
세번째는
파라미터 정보를 적어주면 됩니다.
그리고
안드로이드로 돌아와서
불려질 함수를 추가해 줍니다.
일단 여기까지 해주시면
정상적으로 호출이 됩니다.
----- 아래부터는 파라미터가 있을경우에만 보시면 됩니다. -----
개발하다보면 무조건 void 형식만 사용하는게 아니기 때문에..
파라미터에 대한 설명도 같이 써 놓겠습니다.
파라미터가 있을경우 사용방법
일단 호출하는 곳 ( C++ )
호출 받는 곳 ( Java )
String 값을 리턴 받을때
참조
http://stnguyen.com/cocos2d-x/call-java-functions-from-cpp.html
Java 에서 Cocos2d-x 함수 호출 하는 방법
http://lhh3520.tistory.com/141
'Programming > Cocos2D-X' 카테고리의 다른 글
[Cocos2d-X] AssetsManager 를 이용한 패치파일 관리하는 방법 (1) | 2015.03.30 |
---|---|
[Cocos2d-X] 안드로이드 메모리 해킹 대비하기 (0) | 2015.03.30 |
[Cocos2d-X] 안드로이드 (Java) 에서 Cocos2d-x (C++) 로 함수 호출하는 방법 (0) | 2015.03.28 |
[Cocos2d-X] 3.2 버전에서 Box2D 실행하는 방법 (0) | 2015.03.26 |
[Cocos2d-X] 3.2 버전 Mac 에서 새로운 프로젝트 만드는 방법 (0) | 2015.03.26 |
댓글을 사용할 수 없습니다.