2012-07-04 3 views
-1

이제는 다음과 같은 기능을 구현하고 싶습니다 : 활동에서 HOME, VOLUME_UP, VOLUME_DOWM과 같은 모든 하드웨어 버튼을 보호하십시오. 그러나 POWER 버튼 만 보호 할 수는 없습니다. 방법이 있습니까?활동 UI에서 POWER 버튼을 보호하는 방법

+1

에서 다음 게시물을 읽어 다음과 같이 "방법이 있나요?" - 다행히도, 아니오, 분명한 보안상의 이유가 있습니다. 사용자는 장치를 계속 제어해야하므로 홈 화면으로 돌아가고 장치를 안전 모드로 재부팅하는 등의 작업이 중요합니다. – CommonsWare

+0

앱이 매달린 경우 사용자가 배터리를 꺼내야하는 경우를 대비하여 호기심에서 벗어 났습니까? –

답변

1

전원 및 가정과 같이 Android의 특정 키를 차단할 수 없습니다. 홈 키를 가로 챌 수 없으므로 악의적 인 응용 프로그램이 기능을 수행 할 수 없게됩니다.

홈 키를 가로채는 유일한 방법은 응용 프로그램이 매니페스트에 android.intent.category.HOME을 사용하여 홈 앱을 대체하는 경우입니다.

다른 키를 잡을 수 있습니다. 볼륨 업/다운 및 다시

public boolean dispatchKeyEvent(KeyEvent event) { 
int action = event.getAction(); 
int keyCode = event.getKeyCode(); 
    switch (keyCode) { 
    case KeyEvent.KEYCODE_VOLUME_UP: 
     if (action == KeyEvent.ACTION_UP) { 
      //handle the key event 
     } 
     return true; 
    case KeyEvent.KEYCODE_VOLUME_DOWN: 
     if (action == KeyEvent.ACTION_DOWN) { 
      //handle the key event 
     } 
     return true; 
    default: 
     return super.dispatchKeyEvent(event); 
    } 
} 

안드로이드 개발자 블로그 게시물

Android Developer: Back and other hard keys-three stories

관련 문제