안드로이드 개발 질문/답변
(글 수 45,052)
질문을 바꾸겠습니다.
DB Finalize 오류가 자꾸 발생합니다.
해당 함수들은 모두 Cursor를 return하는 함수입니다. 그래서 중간의 함수 내에서 close할 수 없습니다.
그런데 자꾸 닫아라고 합니다.
Activity를 extend하는 클래스도 아니어서 startManagingCursor함수도 사용하지 못하고 있습니다.
그리고 timer 혹은 alarmmanager를 사용하여 background 작업을 구현하는데 두 경우 모두 db를 접근하지 못합니다.
finalize오류 때문입니다.
대체 이유를 모르겠습니다. fore에서 background만 가면 동작을 하지 않네요
===============추가 실험======================
pause/destroy를 제외하고 하나를 더 넣어봤습니다.
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
요렇게...
이랬더니
pause와 destroy의 경우는 100% 인식을 못하지만
위의 경우에는 나갔다가 다시 어플을 불러오면 DB를 인식하고
나간상태로 그대로 있게 되면 인식을 하지 못합니다.




커서를 리턴하면, 받는 쪽에서 try catch 를 이용해 커서 데이타를 다 처리한 후에 finally 에서 cursor 를 닫아주는 식으로 쓰지않나요?