안드로이드 개발 질문/답변
(글 수 45,052)
Native SO(JNI)를 로드하여 사용하는 Service project를 JAR 파일로 만들어서
다른 Activity project에 사용하여 컨트롤 할려고 하는데 Native SO 찾을 수 없다는 에러메시지가 출력되고 있습니다.
처음 제 생각으로는 Activity의 경로에 Native SO 파일을 생성하면 정상적으로 로드가 될 것으로 생각 했는데
안되는 거 같습니다 -_-;; 그리고 JAR파일에는 Native SO 파일을 포함시켜서 Activity project에 사용할 수 없었구요.
혹시 해결 방안을 아시는 분 답변 부탁 드립니다.
2010.09.13 15:36:16
음 구현에 문제가 있었네요 -_-;
JAR 파일을 생성하는 프로젝트에 Native SO 라이브러리를 포함시켜 놓은 상태에서 JAR 파일을 생성할 때만 제외하면 되겠지 하고,
JAR 파일을 만들었는데 이게 문제였던 거 같습니다.
프로젝트에서 Native SO 라이브러리를 제거하고 JAR파일을 생성하니 정상적으로 로드가 되네요.
정리를 하면 JAR 파일을 생성하는 프로젝트는 내부에서 로드하는 Native SO 라이브러리를 프로젝트에 포함시키면 안됩니다.
의존성 문제가 있는 거 같네요.
답변 감사드립니다. : )
NDK 빌드해보시면 아시겠지만 들어가는 경로가 따로 있습니다.
거기에 넣어주셔야 하구요....
jar안에 so는 못들어가는걸로 알고 있습니다. 따로 받아서 각각 디렉토리에 넣어줘야 합니다.