2013-04-19 3 views
-4

안드로이드에서 이미지를 저장하는 가장 효율적인 방법이 무엇인지 궁금합니다.이미지를 Android에 저장하려면 어떻게해야합니까?

내 앱이 기본적으로하는 일은 기본 신용 카드를 확인한 다음 바코드 (zxing 포함)를 스캔하여 QR 코드를 생성 한 다음 QR 코드를 기본 카드가 저장된 ImageView

지금까지 그렇게 좋았습니다. 그러나 앱에서 다른 이미지 (앱의 다른 화면, 기기의 홈 화면으로 이동하는 등)에서 벗어나 화면으로 돌아갈 때 표시 할 이미지를 기억하는 앱에 문제가 있습니다. 기본 카드가 다시 표시됩니다.

이제 QR 코드를 저장해야한다는 것을 이해하지만 해결 방법을 찾을 수 없습니다. 이 장치에는 SD 카드가 없으므로 외부 저장소에 저장할 필요가 없습니다.

나는 이것을 SharedPreferences, OutputStream 및 캐시를 통해 해결하려고 노력했다. 그러나 그것을 작동시키지 못했습니다.

3 가지 방법 (또는 다른 방법으로 모든 도움을 환영합니다) 중에서 선택 하시겠습니까? 그 코드는 무엇입니까?

+0

sqlite에 데이터 저장을 시도합니다. – Amit

+1

http://stackoverflow.com/questions/9942560/when-to-clear-the-cache-dir-in-android – Carnal

+0

허용되는 답변부터 시작하여 데이터를 저장하는 다양한 방법에 대해 알아보십시오. – Carnal

답변

1
public boolean saveBitmap(Bitmap image, String name){ 
    try { 
     FileOutputStream fos = context.openFileOutput(name, Context.MODE_PRIVATE); 
     image.compress(Bitmap.CompressFormat.JPEG, 70, fos); 
     fos.close(); 
     return true; 
    } 
    catch (Exception e) { 
     e.printStackTrace(); 
     return false; 
    } 
} 

public Bitmap getBitmap(String name){ 
    try { 
     FileInputStream fis = context.openFileInput(name); 
     Bitmap image = BitmapFactory.decodeStream(fis); 
     return image; 
    } 
    catch (Exception e) { 
     e.printStackTrace(); 
     return null; 
    } 
} 
관련 문제