안드로이드 개발 질문/답변
(글 수 45,052)
처음으로 서비스를 통해서 어플을 만들어보았습니다.
서비스안에서 터치작업을 받을수 있게 하였으며 터치를 받으면 액티비티를 호출 합니다.
이과정에서 호출과 실행은 아주 잘됩니다.
전 이상이 없는줄 알았지만 어느 순간 서비스가 재실행 하는것을 발견했습니다.
확인해본결과 액티비티를 호출하고 액티비티닫고 다시 호출하는것을 반복해본결과 메모리가 800KB씩 상승하는것을 확인할수 있었습니다.
개발할때 메모리는 생각도 못해본지라 그냥 그러려니 하고 썼는데 이렇게 제 발목을 잡아버리다니ㅠㅠ
서비스에서 액티비티를 호출할때 유의할점이 있을까요?
또 서비스에서 빈번히 발생하는 메모리누수의 유의할점이 있으면 뭐가 있을까요?
어제 고민하다끝나고 현재는 임시방편으로 시간이나 호출횟수를 카운트해서 서비스를 순간 재시작하게 만들어버리려할까 생각중입니다. 사용자가 눈치못채게 말이죠.ㅠㅠ
어떻게 해야할까요?
서비스를 종료시키지 않으면 계속 돌아가는 놈이니까 종료시키는 걸 생각해야 되겠고요(이건 기본이니까 물로 하셨겠지만),
Activity를 singleTop이나 singleInstance로 하면 답이 될것 같으네요.
singleTop과 singleInstance 요놈 대단히 쓸모가 좋은 놈입니다. 간단하면서도 강력하지요.