잠자는 동안 앱이 종료되지 않도록하려면 어떻게합니까?


11

Droid 2가 있습니다. 휴대 전화를 사용하지 않는 동안 길고 자원 집약적 인 게임 (스펙트럼 소울)을 실행하고 싶습니다. Android "홈"버튼을 눌러 홈 화면으로 돌아간 다음 즉시 게임을 다시 시작하면 중단 된 부분이 바로 나타납니다. 전원 버튼을 눌렀다가 즉시 전화를 켜고 잠금을 해제 한 다음 게임을 다시 시작해도 마찬가지입니다.

일정 시간 (몇 시간) 동안 그대로 두었다가 돌아와서 게임을 시작하면 전혀 실행되지 않는 것처럼 새롭게 시작됩니다. 동기화가 켜져 있지만 전화가 그 동안 아무 것도 사용되지 않았습니다.

내 질문은 두 가지입니다. 언제 어떤 이유에서 죽었는지에 대한 자세한 정보를 얻을 수있는 방법과이 앱이 계속 실행되도록하려면 어떻게 설정해야합니까? 나는 백그라운드에서 아무것도 할 필요가 없으며 돌아올 때 여전히 거기에 있기를 원합니다.

필자는 메모리를 필요로하고 작업 킬러가 필요하지 않기 때문에 안드로이드 클리어링 개념에 익숙하지만 실제로 종료하지 않는 한이 작업을 종료하지 않기를 바랍니다.


실제 코드에 액세스 할 수 없다고 가정합니까?
Nanne

맞습니다. 앱 스토어에서 구매 한 비공개 소스 앱입니다.
Jason Viers

답변:


2

나는 안드로이드의 기본 디자인에서 옵션이 아니라고 확신합니다. 대부분의 사람들이 전화 속도를 유지하기 위해 프로그램을 종료하기를 원하기 때문에 개인적으로 그런 것들에 대한 앱을 본 적이 없습니다. 사용하지 않는 프로그램을 종료하는 것은 안드로이드 시스템입니다. 앱을 만든 사람은 백그라운드에서 실행되도록하거나 항상 계산 또는 오디오와 같이 가능한 한 서비스를 디자인해야 시스템에서 프로그램이 무언가를하고 있다고 생각할 수 있습니다. 배터리가 소모됩니다.


첫 번째와 세 번째 문장은 완전히 정확하지만 다른 문장은 정확하지 않습니다.
Michael

2

제안 : Tasker 를 사용하여 앱의 화면 시간 초과를 비활성화하십시오. 이것은 수 있습니다 배경에가는 것을 방지.


감사합니다! 성공이나 실패를 기록하겠습니다.
Jason Viers

Tasker에서 화면 시간 초과를 변경해도 앱이 종료되는 것을 막을 수 없음을 확인할 수 있습니다. 그래도 제안 해 주셔서 감사합니다.
Jason Viers

1
잠깐, 이렇게해도 화면이 꺼지지 않습니까? 따라서 배터리를 낭비합니까?
Michael

2

질문의 첫 부분으로;

언제 그리고 왜 죽이는 앱에 대한 자세한 정보를 어떻게 얻을 수 있습니까?

Android SDK는 Android 메모리 http://developer.android.com/guide/topics/fundamentals.html 에 요약되어 있습니다.

기본적으로 모든 응용 프로그램은 자체 Linux 프로세스에서 실행됩니다. Android는 응용 프로그램의 구성 요소를 실행해야 할 때 프로세스를 시작한 다음 더 이상 필요하지 않거나 시스템이 다른 응용 프로그램의 메모리를 복구해야 할 때 프로세스를 종료합니다.

따라서 Android를 사용하지 않는 것으로 판단하거나 (앱에서 종료를 클릭 한 경우) 또는 리소스가 부족할 때 Android를 프로그램을 강제 종료하는 것으로 요약 할 수 있습니다. 예를 들어, 512MB의 램이 있고 10 개의 여유 공간이 있고 12 개가 필요한 앱을 시작하면 12 개를 가져올 수있는 가장 적게 사용 된 앱을 결정하려고 시도합니다.

(적어도 내 경험으로는) 꽤 잘하는 경향이 있습니다. 게임에서 집으로 가서 몇 가지 일을 할 수는 있지만 세 번째로 게임을 퇴거시킬 수 있습니다. 특히 리소스 집약적 인 게임의 정도를 명심하십시오. 따라서 나중에 앱을 더 빨리 죽일 수 있습니다.

이제 시간이 지나면 사라지는 이유는 리소스를 시작하고 경쟁하려고하는 동기화 프로세스가 있기 때문입니다. 이 시점에서 앱 메모리 페이지가 자주 나오지 않기 때문에 OS가 필요하다고 생각하는 메모리 회수에 대한 공정한 게임입니다.

두 번째 질문에;

이 앱이 계속 실행되도록 설정하려면 어떻게해야합니까?

나는 작업 킬러를 사용하지 않지만 좋은 것들 (ATK가 리더 https://market.android.com/details?id=com.rechild.advancedtaskkiller&feature=search_result 인 것 같습니다 )은 예외가 있다고 확신합니다 명부. 원하는 게임을 허용 목록에 추가하고 다른 프로세스를 차단 목록에 추가 할 수 있습니다.

또한이 게임에 익숙하지 않으므로 자동 저장 기능과 그 기능에 대해 잘 모르겠습니다. 도움이 되었기를 바랍니다.


1

어떤 앱이 종료되고 왜 더 많은 정보를 얻는가?

전화기를 adb에 연결할 수 있습니다 . 그런 다음 logcat 을 켜십시오 . 출력을 파일로 저장.
로그 파일에는 많은 정보가 필요합니다. 앱 이름을 검색하여; 언제 살해되는지 알 수 있습니다.

안드로이드 시스템에 의해 멈추지 않도록 어떻게 할 수 있습니까?
모르겠다. 잘하면 rAndy 답변이 작동합니다.
하나; 개발자에게 연락하여 문제를 해결하는 가장 쉬운 시간이 필요하기 때문에 문제를 알려줍니다.


logcat 솔루션을 언급하려고했습니다. ActivityManager (Android 내부 "작업 킬러")를 너무 많이 추가하고 싶습니다 .Android에서 killings 앱을 막을 수는 없습니다. 안드로이드 아이디어는 앱 프로세스가 완전히 종료되면 앱이 이전 상태로 복원 할 수 있어야한다는 것입니다. 따라서 앱 개발자 는 게임을 처음부터 시작하지 않아야합니다.
흐름
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.