안드로이드에서도 앱을 강제 종료하지 마세요

지난번 iOS에서 앱을 강제 종료하지 말라는 글에 이어서 이번에는 안드로이드에서도 똑같이 앱을 강제 종료할 필요가 없다는 글입니다. 안드로이드는 태생부터가 멀티태스킹을 가지고 태어난 운영체제입니다. 초기 안드로이드는 데스크톱 컴퓨터처럼 한번 열어둔 앱들이 백그라운드에 상주하면서 RAM과 CPU 자원을 차지하고 있어서 종료할 필요가 있었습니다만 구글의 노력으로 점점 이러한 행위가 필요 없어지고 있습니다. 그렇다면 왜 앱을 강제 종료할 필요가 없는지 한번 알아봅시다.

안드로이드 멀티태스킹의 미신

많은 사람들이 안드로이드 OS에서 앱을 쓰고 나면 종료해야 앱이 쓰고 있던 자원(CPU 사용량, RAM 점유율)을 내려놓는다고 생각하고 있습니다. 초기에는 멀티태스킹이나 배터리 관리에 대한 알고리즘이 없어 앱을 강제 종료할 필요가 있었지만 구글의 멀티태스킹 개선으로 인해 이러한 필요성은 없어지고 있습니다. 오히려 이러한 행위는 안드로이드 운영체제가 잘 관리하고 있던 백그라운드 프로세스를 망치는 행위이며 이러한 행동으로 더 많은 리소스를 쓰게 되고 배터리 소모를 늘리는 결과를 낳게 됩니다.

구글의 멀티태스킹 개선

구글이 2015년에 안드로이드 6.0 마시멜로에서 배터리 성능을 최적화하기 위해 새로운 기능을 추가합니다. Doze라는 기능이죠. 이 기능은 폰의 상태에 따라 앱들이 능동적으로 작동할 수 있게끔 해주고 배터리 소모를 줄여주는 역할을 합니다. 또 구글의 엔지니어 히로시 록하이머는 트위터(현 X)에서 이와 비슷한 질문을 한 유저에게 이러한 행위를 하는 것이 좋지 않다고 말을 해주기도 했습니다.

앱을 강제 종료해야하냐는 유저의 물음에 답해주고 있는 히로시 록하이머

“시스템은 실행 중인 항목을 관리하는 데 최적화되어 있으며, 이를 건드리면 더 많은 쓰레시 1)를 유발할 뿐입니다.” — 히로시 록하이머

“system is optimized for managing what’s running, messing with that just causes more thrash” — Hiroshi Lockheimer Google’s S/W engineer

여러분의 안드로이드는 이미 적극적으로 앱을 죽이고 있습니다.

많은 사람들이 쓰는 안드로이드 폰들은 이미 제조사들에 의해서 커스텀이 된 안드로이드 입니다. 제조사들은 구글의 정책보다 더 공격적으로 백그라운드의 앱을 죽이고 있으며 이러한 노력 덕분에 더 많은 배터리 시간을 확보하고 마케팅에 쓰고 있습니다. 사용자가 앱을 강제 종료하지 않아도 이미 제조사에게 개조된 안드로이드가 이 일을 적극적으로 하고 있다는 것이죠. 실제로 많은 안드로이드 커뮤니티에서 제조사가 앱을 필요 이상으로 죽이고 있으며 이에 대해 불평하는 의견들을 많이 들었을 것입니다. 실제로 돈 킬 마이앱이라는 웹사이트에서 백그라운드 앱을 필요이상으로 죽이는 제조사에 대해서 설명하고 이를 덜 죽이는 방향으로 최적화하는 방법을 소개해 주기도 했습니다. 이렇듯 여러분이 직접 앱을 강제 종료하지 않아도 제조사가 알아서 더 적극적으로 죽이고 있는 상황에 안드로이드의 멀태스킹 효율을 더 떨어뜨리지 않는 것이 좋을 것입니다.

앱 강제 종료는 정말 필요할 때에만

위의 설명처럼 이미 안드로이드에서 알아서 관리하지만 항상 모든 앱이 잘 작동하는 것이 아닙니다. 앱이 제대로 작동하지 않는다면 그때가 앱의 강제 종료가 필요한 상황입니다. 그렇지 않다면 일부러 앱을 강제 종료해 멀티태스킹 효율과 배터리 지속 시간을 줄일 필요가 없다는 것입니다. 대부분의 상황은 iOS와 마찬가지로 앱을 강제 종료하지 않아도 된다는 이야기죠. 안드로이드를 오랫동안 써오신 분들이라면 이러한 습관을 버리기가 정말 힘들겠지만 이미 일을 열심히 하는 안드로이드를 위해 자제하고 배터리 시간을 늘려 보시는 게 어떨까 싶습니다. 😃

1)컴퓨터의 실제 스토리지 리소스가 과도하게 커밋될 때 가상 메모리가 있는 시스템에서 발생하며, 지속적인 페이징 및 페이지 오류 상태로 이어져 대부분의 애플리케이션 수준 처리 속도가 느려지는 현상

참고:

Why You Need To Stop Closing Apps On Your Android Phone - SlashGear