안드로이드 개발 질문/답변
(글 수 45,052)
...........
만든 프로젝트중에 뷰어 프로젝트가 있어서 이 프로젝트를 jar로 빼고
만들 프로젝트에 위에서 추출한 jar 을 추가 시켰습니다.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.viewer);
저기 setContentView(R.layout.viewer); 를 넘어가면 죽는데 리소스낫파운드익셉션이라고 나는데
jar 에 들어있는 resource 를 못쓰는건지 jar을 만들때 잘못한건지
새로 만드는 프로젝트에 뷰어 프로젝트를 그냥 추가해서 하면 되는데 jar 로 빼서 추가해서 하면 안되네요.
01-31 15:59:03.818: E/AndroidRuntime(1909): Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f030007
요런 익셉션이 나는데 검색해봐도 잘 안나와 있고 찾질 못하겠네요.
아시는분 있으시면 좀 도와주십쇼;;;;;




Android에서 생성된 Jar 는 특성상 리소스를 포함하지 않습니다.. (.class 파일 들만 포함.그래서, Android resource를 포함하는 경우 Jar만 배포할 수 없습니다.).
이를 위해 Source와 resource가 포함된 프로젝트를 Android Library Project 로 만들고 (Project property->Android에 보면 Is Library라는 체크 항목이 있습니다. 요거 체크하심 됩니다. )
이 Android Library(Jar + 리소스)를 사용하려는 프로젝트에서 Project property->Android->Library항목 -> Add에서 앞서 만든 프로젝트를 설정해 빌드시 병합을 하도록 만드시면 됩니다.