2013-01-21 2 views
0

지금 내 애플 리케이션에 많은 이미지를 가지고 있습니다. 모두 드로어 블을 넣었습니다. 이미지는 모바일 시청을 위해 미리 압축되거나 최적화되었습니다. (하지만이 모든 이미지를 sdcard에 넣고 이미지가 많아서 드로어 블 대신 해당 위치를 사용합니다.)많은 수의 이미지 저장하기

내 요구 사항 중 하나는 사용자에게 오프라인 액세스를 제공 할 수 있다는 것입니다. 나는 무엇을 할 가장 효율적인 방법 이미지의 많은 양의 저장

을 것 궁금

그래서 나의 계획은 내가 폴더를 만들어 (SDCARD에있는 모든 이미지를 저장할 것입니다 (주위에 천 사백 - 몇 가지) 그 안에)이 이미지의 링크를 데이터베이스 테이블에 저장하십시오.

그래서 App은 먼저 DB 테이블에서 이미지 경로를 가져 와서 sdcard에서 파일을 가져 와서 표시합니다.

하지만 내 문제는 어디에 앱을 개발하는 동안이 이미지를 넣어야하는지입니다.

1 (내가 그 위치를 사용하기 시작! 당김 내 모든 이미지를 넣고 그 다음 programitically SD 카드 및 복사 함)) 개발시 sdcard에있는 모든 이미지를 저장하는 방법 응용 프로그램의. ? 2) 내 앱을 배포 할 때 모든 이미지가 패키지 안에 있어야합니까?

답변

1

많은 수의 이미지가있는 경우 앱을 처음 시작할 때 원격 위치에서 이미지를 다운로드하여 SD 카드에 저장하고 db 테이블을 작성하십시오. 드로어 블에서 드로잉을 가져와 SD 카드에 복사하는 것은 이치에 맞지 않습니다.

당신이 그릴 수에서 이미지를 복사하고 여기에 다음 SD 카드에 저장하려면

EDIT 당신이 그것을 할 수있는 방법 -

먼저 비트 맵 객체로 그릴 수를 변환해야합니다.

Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), R.drawable.filenameindrawable); 

지금

try { 
     FileOutputStream out = new FileOutputStream("file on sd card"); 
     bmp.compress(Bitmap.CompressFormat.PNG, 90, out); 
} catch (Exception e) { 
     e.printStackTrace(); 
} 

생각이 아니다 권장되는 방법 FileOutputStream에

사용하여 SD 카드에 저장합니다.

+0

약한 영어에 사과드립니다. 인터넷에서 이미지를 다운로드하지 않습니다. 배포 할 때 내 응용 프로그램 패키지에 모든 이미지를 넣어야하고, 응용 프로그램을 설치할 때 이미지는 일부 디렉토리에 저장해야하며 이미지 이름이있는 디렉토리 경로는 이미 db에 저장되어 있어야합니다. 그래서 이것을 달성하는 방법? – LogicBoy

+0

왜 SD 카드에 이미지가 필요하고 드로어 블 폴더에 이미지가 필요하지 않습니까? 당신은 drawable 폴더에 모든 것을 유지하고 R.drawable.filename을 사용하여 그것을 얻을 수 있습니까? 그렇게하면 DB를 유지 관리 할 필요가 없습니다. – Enigma

+0

답변을 업데이트했습니다. – Enigma

0

SD 카드에 응용 프로그램 이미지를 저장하는 것은 좋지 않습니다. 앱을 설치 한 후 일부 카드에 sd 카드가 없거나 sd 카드가 제거 된 경우 해당 이미지는 uor 앱에서 사용할 수 없으므로 어느 누구나 SD 카드에 저장된 이미지에 액세스 할 수 있습니다. 그래서 bettor는 원격 위치에서 이미지를 다운로드하여 앱을 처음 시작할 때 앱의 내부 파일 시스템에 이미지를 저장하고 SD 카드/Internalfilesystem에 저장하고 db 테이블을 업데이트합니다.

+0

감사합니다 raj,하지만 내 drawable 폴더에있는 모든 이미지가 있고 어디에서 그것을 다운로드하지 않을거야, 그것은 응용 프로그램의 설치 당시 애플 리케이션 패키지에 상주합니다. 그래서이 모든 것을 어디에 둘 것인지 알려주세요. drawable 또는 다른 곳에서.? – LogicBoy

+0

apk를 설치할 때 모든 이미지를 sd 카드에 복사해야합니다. 어떻게해야합니까? – LogicBoy