안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요~
다름이 아니라
제목 그대로 NDK를 이용해서 C쪽에서 리소스 접근하는 방식이 이용하는데
다른분들은 어떻게 하시는지 궁굼해서 이렇게 글을 올려 봅니다.
현재 제가 사용하는 방식은
리소스들을 압축하여 assets 폴더에 넣은후
프로그램 실행(onCreate)시 압축파일을 sdcard 로 압축을 풀어
NDK에서 리소스를 접근하는데요
위와 같은 방법으로 하니 문제점이 생기네요
1. 압축해제로 인한 데이터 용량이 두배로 들어난다는 것
2. 압축 해제시 IO접근으로 인한 로딩 지연(특히 갤럭시!!!)
위 방법 말고 리소스 관리를 어떻게 하는지 조언을 구하고자
글 남깁니다~
다름이 아니라
제목 그대로 NDK를 이용해서 C쪽에서 리소스 접근하는 방식이 이용하는데
다른분들은 어떻게 하시는지 궁굼해서 이렇게 글을 올려 봅니다.
현재 제가 사용하는 방식은
리소스들을 압축하여 assets 폴더에 넣은후
프로그램 실행(onCreate)시 압축파일을 sdcard 로 압축을 풀어
NDK에서 리소스를 접근하는데요
위와 같은 방법으로 하니 문제점이 생기네요
1. 압축해제로 인한 데이터 용량이 두배로 들어난다는 것
2. 압축 해제시 IO접근으로 인한 로딩 지연(특히 갤럭시!!!)
위 방법 말고 리소스 관리를 어떻게 하는지 조언을 구하고자
글 남깁니다~
2010.12.23 11:18:01
현재 자바에서
제일 먼저 asset 에 있는 리소스 압축 파일을 해제 하고
그 다음 c쪽 jni 에서 리소스 로딩 후 게임 실행하고 있는 상태입니다.
크게 문제되는 사항이 데이터 용량보다는
압축 해제 하는 시간이 너무 오래 걸려서 지연이 많이 발생하는 문제때문에
다른 분들은 어떻게 하는지 궁굼해서 질문을 올려 본것입니다
2010.12.23 12:48:08
설명이 부족했나보군요 asset 리드 시 압축을 전부 푸는게 아니라 java.util.zip.ZipFile, 혹은 java.util.jar.JarFile의 inputStream을 사용하여 리드하면 됩니다.



