2014-02-27 1 views
0

좋아, Android 용 앱을 만들었습니다. 그리고 안드로이드 폰의 가운데 버튼이나 뒤 (왼쪽) 버튼을 누르면 안드로이드 앱이 여전히 백그라운드에서 실행된다는 것을 알 수 있습니다. 내 코드는 다음과 같습니다.AS3에는 Android 앱이 종료 될 때 이벤트가 있습니까?

첫 번째 행 (addEventListener)은 앱을 여는 즉시 실행되는 개인 함수에 있습니다.

NativeApplication.nativeApplication.addEventListener(flash.events.Event.EXITING, onMyAppExit) 



private function onMyAppExit(event:flash.events.Event):void{ 
    trace("onMyAppExit is running"); 
    saveProgress(); 
} 

기본적으로, 나는 앱이 실제로 백그라운드에서 실행에서 종료 할 때 saveProgress()를 실행합니다. 캔디 크러시와 같은 다른 앱을 열면 내 앱이 실제로 종료 된 것으로 나타났습니다. Android OS는 앱이 사용되지 않을 때나 사용하는 앱이 많은 RAM을 사용할 때 자동으로 앱을 종료합니다. 그러나 내 코드는 AIR Debug Launcher (Mobile)에서 응용 프로그램을 실행할 때만 작동합니다. 그 이유는 응용 프로그램 창의 오른쪽 모서리에있는 x 버튼을 클릭하면 내 출력 창의 함수에서 추적을 볼 수 있기 때문입니다. 그러나 Android 휴대 전화를 컴퓨터에 연결 한 다음 Android 설정 용 AIR3.8 -> 게시하고 원격 디버그 세션을 시작한 다음 내 앱을 먼저 연 다음 캔디 크래시를 엽니 다. 안드로이드 OS가 자동으로 내 애플 리케이션을 종료, 나는 추적을 볼 수 없습니다. 그래서 코드가 내 휴대폰에서 작동하지 않는다는 결론을 내 렸습니다.

답변

1

나는 앱이 배경에 갈 때 당신이 그것으로 여전히 안전 :

의 떨어져 당신이 이벤트 Event.ACTIVATE이있는 모든 때문에 운영 체제 앱을 찰 수 저장할 수있는 이벤트 Event.DEACTIVATE, 를 사용한다고 생각하면 앱이 포 그라운드에서 다시 돌아와서 레벨을 되 살릴 수 있습니다.

+0

yea, EXITING이 작동하지 않아서 내가 좋아할만한 것을 찾을 수 없으면, 내 앱이 비활성화 될 때 진행 상황을 저장하고 종료하지 않게 할 것입니다. 감사 – SpiderWeb

관련 문제