3월, 2015의 게시물 표시

유니티3D 뷰포리아 SDK 3.0.9 iOS 실행시 EXC_BAD_ACCESS 에러

이미지
유니티3D에 퀄컴 뷰포리아로 증강현실 앱 만들기 튜토리얼 작성하다말고 뜬금없이 이슈하나 남겨봅니다. 그런데 이 이슈는 더이상 발생하지 않을 듯 싶은데요, 지난주에 뷰포리아가 4.0 정식을 출시 했기때문이죠. 아래 정리하는 링크는 이제 뷰포리아 개발자 포털에 링크마저도 사라진 3.0.9 버전에 대한 내용입니다. 임시로 저장했더건데 삭제하긴 뭐해서 남겨봅니다.

 먼저 유니티 4.6.1 또는 2였던거 같구요, iOS는 최신의 xcode와 SDK 환경이었습니다. 빌드 후 실행하면 아래와 같이 applicationDidBecomeActive에서 UIInterfaceOrientation을 mainBundle에서 가져오지 못하고 nil 값인 상태로 QCARUnityPlayer에 넘겨져서 생긴 EXC_BAD_ACCESS 에러였습니다.



 그래서 최종적으로 QCARUnityPlayer::getRotationFlag에서 뻗어버리죠.



 해결 방법은 Info.plist에 키값으로 UIInterfaceOrientation을 넣어주시고 개발하시는 앱의 회전 상태에 맞는 값을 선택해주면 됩니다.

 간단히 정리해봤습니다. 최신 릴리즈인 4.x에서는 발생 안하는 것 같네요. 그나저나 기존 포스팅도 4.0 기준으로 해야하고하는데 사실 다른 이슈 때문에 유니티에 뷰포리아 연동 포스팅을 더 이어나갈 수 있을지 모르겠네요.

참고
Unity 4.5.4 - 4.5.5 and Vuforia on iOS
Crash with Unity3d 4.5.4 ios8