2012-01-17 3 views
0

Мне нужна помощь в обнаружении и работе с кнопкой дома, нажатой на iPhone/iPod Touch, в которой работает приложение AIR. Я попробовалHandle iOS home button press as as3

NativeApplication.nativeApplication.addEventListener(KeyboardEvent.KEY_DOWN, handleKeys, false, 0, true); 

function handleKeys(event:KeyboardEvent):void 
{ 
    if(event.keyCode == Keyboard.HOME) { 
     //do something 
    } 
} 

без везения. Есть идеи? В частности, я хочу, чтобы приложение не закрывалось при нажатии кнопки дома.

+1

Вы не должны препятствовать закрытию/перемещению приложения на фоне при нажатии кнопки дома iOS. Если пользователь нажимает кнопку «домой», они намереваются перейти на главный экран. Вместо этого вы должны быстро сохранить состояние в ответ на событие DEACTIVATE. –

ответ

0
import flash.events.Event; 

addEventListener(Event.ACTIVATE, activateListener); 
addEventListener(Event.DEACTIVATE, deactivateListener); 

private function activateListener(e:Event):void{ 
     //do something when awakened 

} 


private function deactivateListener(e:Event):void{ 
     //do something when home button is pressed. 

} 
+0

Когда я выполнил ваш код с помощью e.preventDefault(); завернутый в функцию deactivateListener, это не повлияло на предотвращение закрытия приложения. Я собираюсь предотвратить закрытие приложения неправильным способом? – Raddfood

+2

Вы не можете предотвратить деактивацию приложения. Все, что вы можете сделать, это действие что-то перед деактивацией. – crooksy88