Android에서 앱을 닫는 올바른 방법은 무엇입니까?


69

나는 안드로이드 플랫폼을 처음 사용하는데, 이것은 아마도 멍청한 질문 일지 모르지만 ...

앱을 어떻게 닫습니까?

앱을 사용하고 있고 나가고 싶은 경우, "홈"을 클릭하고 계속 진행하지만 작업 관리자 앱을 설치 한 후 모든 것이 실행되고 있음을 알았습니다 .

앱을 종료하는 방법이 있습니까? 아니면 무언가를 종료 할 때마다 작업 관리자를 사용해야합니까?


답변:


48

BACK버튼을 사용하여 앱을 종료하면 onDestroy()현재 활동 이 호출 됩니다. HOME만 누르면 호출 만 onPause()
걱정하지 않아도됩니다. 활동은 배터리를 소모하지 않으므로 메모리에 남아 있으므로 열 수 있습니다 앞으로 더 빨리.

안드로이드가 태스크 킬러 앱을 사용하는 것은 권장하지 않습니다. 안드로이드가 작업 킬러를 사용하는 것은 배터리를 잡아 당기는 추가 서비스입니다. 트위터 나 이메일 클라이언트와 같이 백그라운드에서 서비스를 실행하는 앱, 서버와 같은 서비스를 제공하는 좋은 앱은 서비스를 끌 수있는 옵션이 있습니다.


1
나는 몇 가지 애플 리케이션을 발견했습니다 않는 이 상태를 일시 정지 배터리의 많은 통해 식사를. 즉, 최신 버전의 Google지도 및 GalaxIR이라는 게임입니다. 그러므로 나쁜 범죄자들을 주시하고 그 사람들을 올바르게 닫으십시오.
keithjgrant

1
배경 서비스 인 타자를 먹는다면 당신은 착각합니다.
Nathan Schwermann

5
실제로 잘 개발되지 않았고 Android 애플리케이션 수명주기를 따르지 않는 애플리케이션을 가질 수 있습니다. 예를 들어, 스레드가 OS에 의해 일시 중지 된 후에도 (홈을 누름) 활동에서 활성 상태로 남아있을 수 있습니다.이 경우 앱은 배터리를 계속 사용합니다.
jmbouffard

1
뒤로 버튼을 눌렀을 때 많은 앱이 종료되지 않는 것으로 나타났습니다. 예 : Pandora, G
Clay Nichols

1
(내 편집 시간이 만료되었습니다.) ... 뒤로 단추로 닫히지 않는 다른 앱 : Pandora (뒤로를 누른 후에도 계속 재생 됨), Google Play Store, FaceBook, Podkicker. 내가 테스트하는 방법은 앱이 사라질 때까지 (일반적으로 집에 돌아온다) Back 버튼을 클릭하고 Easy Task Killer를 실행하는 것입니다.
Clay Nichols

25

나는 내가 읽은 모든 것이 Back버튼이 응용 프로그램을 종료하는 올바른 방법 이라고 말합니다 .

Home안드로이드가 더 이상 필요하지 않다고 결정할 때까지 누르면 백그라운드에서 계속 실행됩니다. 앱을 전환하여 무언가를 확인 해야하는 경우 편리합니다 (2 초 동안 집을 보유하면 최근에 실행중인 앱 목록이 나타납니다) 대부분의 휴대 전화에서 다시 전환 할 수 있지만 뒤로 버튼을 사용하여 앱을 닫으려면 앱에 알려줍니다.


3
Home버튼을 누르고 있으면 실행중인 앱이 아니라 마지막으로 열린 6 개의 앱만 나열됩니다.

@ Loïc : 그것은 나를 위해 8을 보여줍니다.
ale

1
@LoicWolff, AlEverett 사용되는 런처와 ROM 자체에 따라 다릅니다.
t0mm13b

사실이 아닙니다. 활동은 Android에서 백그라운드로 실행되지 않습니다.
Dan Hulme

12

일부 앱의 메뉴에는 "종료"옵션이 있습니다. 대부분 그렇지 않습니다.

걱정할 필요가 없습니다. 다음에 필요한 앱으로 이동할 수 있습니다. Android는 필요할 때 리소스를 확보하는 데 매우 효과적입니다.

업데이트 : AndroidSpin은 실제 조사를 수행했습니다 .


nice link, ty :)
흐름

7

활동이 백그라운드에서 실행되지 않습니다

Android에서는 활동 (즉, 볼 수있는 앱의 일부)이 백그라운드에서 실행되지 않습니다. 화면에있는 동안에 만 작동하고 배터리 전원을 사용할 수 있습니다. 활동에 관계없이 사용 여부의 실행을 중지 또는 다시 그것을두고. 유일한 차이점은 Android가 앱에 저장하도록 요청한 데이터이므로 "올바른 방법"옵션은 없습니다. 그것은 당신이하고 싶은 것에 달려 있습니다.

home 을 사용하는 경우 Android는 앱을 동일한 상태로 유지하므로 나중에 다시 예를 들어 최근 앱 목록을 통해 다시 돌아와도 여전히 동일한 상태로 유지됩니다. 동일한 화면에서, 같은 것들을 보여줍니다. 예를 들어, 이메일 앱인 경우 하나의 이메일을보고 있다면 어떤 이메일인지 기억하고 동일한 이메일을 표시합니다.

결국 (약 30 분 후) Android는 앱으로 돌아 오지 않는다고 결론을 내립니다. 따라서 다음 번에 앱을 시작할 때 전면 / 메인 화면에서 시작됩니다. 예제를 계속 진행하기 위해 이메일 앱은보고있는 이메일과 폴더를 잊어 버리고받은 편지함을 표시합니다.

back 을 사용 하면 Android에이 뷰로 돌아오고 싶지 않다고 알려줍니다. 보고 있던 내용에 대한 정보가 즉시 삭제됩니다. 다음에 앱을 시작하면 전면 화면 (예 :받은 편지함)이 표시됩니다.

다른 사람들이 말했듯이 앱은 뒤로 버튼 의 동작을 제어 할 수 있습니다 . 예를 들어, 웹 브라우저는이를 사용하여 브라우저 기록으로 되돌아갑니다. 내가 설명 한 것은 뒤로 버튼의 기본 동작이며, 개발자는 혼란을 피하기 위해 동작을 유지해야합니다.

캐시 된 백그라운드 프로세스

어떤 방법을 사용하든 Android는 가능한 한 오랫동안 앱을 메모리에 남겨두고 실행하지는 않습니다. 보다 효율적입니다. 앱으로 돌아 왔을 때 여전히 메모리에 있으면 Android는 다시 실행할 수 있습니다. 아직 메모리에 없으면 Android는 저장 공간에서 앱을 다시로드하는 데 시간과 에너지를 소비해야합니다.

이전 Android 버전에서는 이러한 방식으로 백그라운드에 메모리에 남아있는 앱이 "실행중인 앱"목록에 포함되었습니다. 이것은 사용자에게 약간 혼란 스럽습니다. 사람들이 앱이 실제로 실행되고 있다고 생각하게합니다. 따라서 최신 버전에서는 이러한 앱을 "캐시 된 백그라운드 프로세스"라고 부르며 실행 중이 아니라 캐시 된 상태임을 분명히합니다.

백그라운드 앱은 어떻습니까?

이전에는 활동이 백그라운드에서 실행되지 않는다고 말했습니다. 그렇다면 이메일 클라이언트는 어떻게 메일을 확인합니까? 활동뿐만 아니라 앱에도 서비스 가있을 수 있습니다 . 서비스에는 사용자가 보거나 상호 작용할 수있는 GUI가 없지만 백그라운드에서 실행됩니다. 일반적으로 한 시간에 한 번씩 메일을 확인하는 등의 서비스는 드물게 만 실행되지만 앱 개발자는 항상 서비스를 실행하여 배터리를 소모 할 수 있습니다.

와 활동 떠나 다시집에 서비스가 계속 실행하거나 주어진 시간 (메일 체크 인해 다음)에 나중에 트리거 : 안드로이드 같은 응용 프로그램에서 모든 서비스를 처리하는 방법을 변경하지 않습니다.

요약

요약하면, 정말 당신이 사용 여부를 중요하지 않습니다 다시 : 그것은 단지 응용 프로그램은 당신에게 당신이 그것을 실행할 다음 시간을 보여줍니다 무엇을 변경합니다. 배터리 사용에는 영향을 미치지 않습니다. 둘 다 PC에서 프로그램을 "종료"하는 것과 일치하지 않습니다.


누군가 이걸 다뤄 서 너무 기뻐요! 저는 개발자이지만 Verizon Wireless에서 일한 적이 있는데 필요하지 않을 때 얼마나 많은 사람들이이 문제에 관심이 있었는지 말할 수 없습니다.
Roan

3

Android에서 응용 프로그램을 닫을 필요가 없으며 OS는 다른 곳에서 리소스가 필요할 때 나머지 응용 프로그램의 메모리를 정리합니다. 작업 킬러를 사용하면 OS의 정상적인 작동이 중단되고 응용 프로그램을 항상 처음부터 다시로드해야하기 때문에 장치 속도가 느려질 수 있습니다.

Android 애플리케이션 수명주기는 최상위에 있지 않은 애플리케이션이 더 이상 CPU를 사용하지 않는 일시 중지 된 상태로 이동하는 방식으로 작동합니다. 응용 프로그램을 다시 열 경우 메모리 내용 만 유지됩니다. 필요한 경우 메모리가 해제됩니다.

즉, 응용 프로그램 개발자는 응용 프로그램을 만들 때 응용 프로그램 수명주기를 따라야 할 버그가 있으므로 응용 프로그램이 실제로 멈추거나 일시 중지되지 않는 버그 나 실수가 발생할 수 있습니다. 이러한 응용 프로그램을 발견하고 닫을 내용은 응용 프로그램에서 "강제 중지"를 선택하여 "설정"-> "응용 프로그램"-> "응용 프로그램 관리"를 통해 수행 할 수 있습니다.

그러나 나는 장치에서 지속적으로 실행되는 작업 킬러를 사용하지 않는 것이 좋습니다.


1

schwiz의 답변에 뒤로 버튼의 기능을 재정의하는 데 필요한 코드 줄이 거의 없다는 것을 추가하고 싶습니다. 따라서 앱을 닫는 것이 항상 신뢰할 수있는 것은 아닙니다. 따라서 앱 개발자가 뒤로 버튼을 눌렀을 때 앱을 닫지 않으려면 닫히지 않습니다.

대부분의 우수한 앱 개발자는 앱의 홈 메뉴에서 뒤로 버튼을 누르면 경고 대화 상자가 팝업되지만 사용자가 앱을 종료할지 여부를 묻는 메시지가 표시되지만 종료를 클릭하면 앱이 닫힙니다.

정답은 이것이 될 수 있습니다. 앱의 폐쇄는 앱 개발자에게 전적으로 달려 있습니다. 홈 버튼을 눌렀을 때 앱을 닫으려면 종료 코드를에 넣으십시오 onPause(). 뒤로 버튼을 원하면에 넣습니다 onBackKeyPressed. 따라서 실제로 사용자의 손에 달려 있지 않습니다.

사용자는 필요하지 않을 때 적절한 닫기 기능을 제공하지 않는 앱을 ​​사용하지 않아도됩니다. 작업 관리자는 앱을 종료하는 좋은 방법이 아닙니다. 앱을 중단시키고 상태를 저장할 기회를주지 않기 때문입니다.

OS는 필요할 때마다 앱을 닫으므로 걱정하지 않아도됩니다.

편집 :
앱을 종료하자마자 (예 : 홈 키를 클릭 할 때) 애플리케이션을 삭제하는 옵션이 있습니다. Settings-> Developer Options-> 로 이동할 수 있습니다 Don't keep Activities. 개발자 옵션이지만 백그라운드에서 실행되는 앱이 너무 걱정되는 경우이 옵션을 사용할 수 있습니다. 그러나 개발자가 아닌 사람이 사용하지 않는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.