Я новичок в android, может ли кто-нибудь рассказать мне, как написать эффективный код в отношении управления памятью.Как эффективно управлять памятью (кучей) приложения для Android
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
}
Есть ли что-нибудь, что я мог бы сделать, чтобы избежать нехватки памяти, висящего телефона?
при отображении изображения в представлении изображения вы всегда можете изменить размер изображения до нужного размера, а затем установите, чтобы избежать нехватки памяти. – Sandeep
Это может помочь :: http: //stackoverflow.com/questions/19264819/images-memory-management-in-android – ASP
Проверьте это также :: http: //developer.android.com/training/displaying-bitmaps/manage -memory.html – ASP