2013-11-22 1 views
1

나는 안드로이드를 처음 접했고, 아무도 메모리 관리와 관련하여 효과적인 코드를 작성하는 방법을 알려줄 수있다.효과적으로 안드로이드 애플 리케이션의 메모리 (힙)을 관리하는 방법

public class XXX extends Activity { 

EditText et; 
ImageView iv; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    et = (EditText) findViewById(R.id.editText); 
iv = (ImageView) findViewById(R.id.iv); 


} 

    public void release(){ 
et=null; 

Drawable drawable = ((ImageView) iv).getDrawable(); 
     if (drawable instanceof BitmapDrawable) { 
      BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; 
      bitmapDrawable.getBitmap().recycle(); 
     } 

iv=null; 
System.gc(); 
} 

public void onPic(View v){ 
// code to capture image 
} 

public void onSave(View v){ 
    DBHelper dbHelper = new DBHelper(this); 
    SqliteDatabase db = dbHelper.getReadableDatabase(); 

String name = et.getText().toString(); 

ContentValues cv cv= new ContentValues(); 
// saving , calling release(); and going back to main screen 


} 

휴대 전화 걸 때 메모리 부족을 피하기 위해 할 수있는 일이 있습니까?

+0

여기에서 완전한 이해의 문서를 갈 수 있습니다 크기를 조정 한 다음 메모리 부족을 피하기 위해 설정합니다. – Sandeep

+0

도움이 될 수도 있습니다 :: http : //stackoverflow.com/questions/19264819/images-memory-management-in-android – ASP

+0

다음을 확인하십시오 :: http : //developer.android.com/training/displaying-bitmaps/manage -memory.html – ASP

답변

0

비트 맵은 대부분 메모리 부족 예외가 발생하여 메모리를 쉽게 해제하지 않습니다. 비트 맵의 ​​크기를 조정하고로드 할 수 있습니다.

이 효율적인 비트 맵 로딩을 표시하는 데 도움이 될 수 있습니다 Bitmap loading

이미지보기에서 이미지를 표시하는 동안 당신은 당신이 항상 필요로 이미지 크기를 조정할 수 있습니다 Bitmap handling

관련 문제