애매해서 질문 제목을 뭐라고 적어야 할지몰라서 여기에 다시 적습니다
Activity 내에서 여러 리소스(이미지, 스트링, 뷰, 등)을 사용하고 난 뒤
일일이 null지정을 해주는게 나을까요?
간단한 어플인데도 불구하고 RAM을 의외로 많이 잡아먹어서 이렇게 질문드립니다..
일단 제가 생각한 방식은 다음과 같습니다
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 종료 인터트를 받았다면 액티비티 바로 종료
Bundle exit = getIntent().getExtras();
if(exit != null && exit.getBoolean("exit")) finish();
// 기타 등등............
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 뒤로가기키 누를 시 액티비티 초기화 및 종료
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
// 메인 액티비티 실행
// 초기화후 메인 액티비티 실행을 위한 인턴트
final Intent exit = new Intent(this, Main.class);
exit.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
exit.putExtra("exit", true);
startActivity(exit);
break;
}
return false;
} // onKeyDown
인턴트 플래그 및 Boolean을 활용해서 이때까지 열린 Activity를 초기화 하고, 새로 Activity를 연 뒤 바로 Boolean값을 확인하고 종료하는 방식입니다.
이 방법 말고 null 지정이나 다른 좋은 방법 없을까요..?