2012-10-24 1 views
0

닫기 버튼을 클릭 할 때 사용자가 창을 닫지 못하게하려고합니다. 시스템 트레이에 응용 프로그램 도킹을하고 싶습니다.TideSDK에서 응용 프로그램 종료 방지

내 첫 번째 단계는 사용자가 창을 닫고 해당 이벤트의 기본 동작을 방지하려고 할 때를 인식하는 것입니다. 나는이 코드가 작동 할 것으로 기대하지만, 그렇게하지는 않는다.

var appWindow = Titanium.UI.getCurrentWindow(); 
appWindow.addEventListener('app.exit', function(event){ 
    event.preventDefault(); 
}) 

exit 이벤트와 이벤트 상수 자체를 사용하지 않으려 고 시도했습니다.

답변

0

preventDefault를 호출 할 때 모든 작업이 네이티브 응용 프로그램 래퍼 자체가 아니라 WebKit 브라우저 페이지의 기본 동작을 중지하기 때문에 작동하지 않습니다.

닫기 명령은 기본 래퍼에 대한 네이티브 함수 호출이며, 이벤트를 수신기로 전달하기 만하면 제어를 전달하지 않습니다.

또한 다소 위험합니다. 사용자가 응용 프로그램을 닫지 않아도 문제가되지 않는 것 같습니다. 어쩌면 대신 백그라운드 서비스를 등록하여 대신 실행해야합니까?

+0

감사합니다. 다음과 같이 보이지 않습니다. 앱을 닫을 때만 앱이 작업 표시 줄에 앱을 "도킹"하는 동작을 고려하십시오. 이것은 내가 생각하고있는 유스 케이스이다. –

0

하나의 트릭은 앱의 '보이지 않는'창을 여는 것이므로 사용자가 '애플리케이션'창을 닫더라도 앱이 계속 실행되어야합니다.