Unity 에서 iOS 로(에 있는..) 함수를 호출 하는 방법.
일단 Unity 에서 아래 처럼 iOS 에 있는 함수 이름을 등록 시켜 놓아야 한다.
( using System.Runtime.InteropServices 를 해줘야 DllImport 에서 에러가 안난다.)
iOS 에 등록되어 있는 함수를 DllImport 함수를 사용해서 등록 한다.
여기서 중요한 점은 string 을 리턴받는 함수라면
꼭 const char* 나 string 이 아닌
Marshal.PtrToStringAnsi() 함수를 사용해서 리턴을 해줘야 한다.
그 다음에 iOS 에서는
아래 처럼 해준다.
파일 확장자가 .mm 파일 이기 때문에 extern “C” 를 해줬다.
( 확장자가 .m 이면 해줄 필요 없음. )
이렇게 해주고 유니티에서 함수를 호출하면 iOS 에 등록되어 있는 함수가 호출 된다.
C# 의 delegate 를 사용하는 방법
http://lhh3520.tistory.com/208
'Programming > Unity3D' 카테고리의 다른 글
[Unity3D] Mac에서 안드로이드 Plugin 만들기 # 2 (0) | 2015.03.27 |
---|---|
[Unity3D] iOS 빌드 할때 FileNotFoundException 에러 (0) | 2015.03.27 |
[Unity3D] 2D Toolkit 스프라이트 사이즈 얻어오는 방법 (0) | 2015.03.27 |
[Unity3D] 2D Toolkit 스프라이트 경계가 반짝이는 문제 (0) | 2015.03.27 |
[Unity3D] Missing Script 에러해결 및 Svn 또는 git 설정 관련 (2) | 2015.03.27 |