Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android游戲開發之旅15 按鍵中斷處理

Android游戲開發之旅15 按鍵中斷處理

編輯:高級開發

有關android平台上游戲開發中我們需要處理一些特別的按鍵事件,對於突發的事情我們需要特別的考慮,比如突然來電話了和游戲中按下一些特殊的鍵,比如拍照鍵

@Override
public boolean dispatchKeyEvent(KeyEvent event)
{
switch (event.getKeyCode())
{
case KeyEvent.KEYCODE_VOLUME_UP: //音量鍵+
case KeyEvent.KEYCODE_VOLUME_DOWN: //音量鍵-
case KeyEvent.KEYCODE_CAMERA: //拍照鍵
case KeyEvent.KEYCODE_FOCUS: //拍照鍵半按的對焦狀態
// event.getAction() == KeyEvent.ACTION_UP //android123提示如果按鍵按下後彈起時觸發

}
return true; //這些標記為處理過,則不在往內部傳遞
default:
break;
}
return super.dispatchKeyEvent(event);
}

對於游戲突然來電話我們一般采取通過PhoneStateListener類提供的public void onCallStateChanged (int state, String incomingNumber) 回調方法可以獲取電話的狀態,比如常規空閒時CALL_STATE_IDLE、來電時
CALL_STATE_RINGING和CALL_STATE_OFFHOOK 摘機通話中,有關處理的細節網友可以查看android Git項目中的Music,在android開源項目中系統自帶的音樂播放器可以很好的處理,比如在通話結束後恢復音樂播放,而我們游戲需要做的就是記住當前的游戲狀態盡量數據持久化處理,不能因為長時間的通話,游戲的Activity被清理了,這裡我們一般通過onSaveInstanceState來保存當前窗口的一些記錄,通過Intent標記來讓系統管理好我們游戲的生命周期。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved