0

HOMEボタンをオーバーライドするために次の方法を試しました:-

  1. KeyDown メソッドを使用する。

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        Log.e("Pressed", "" + keyCode);
    
    if (keyCode == KeyEvent.KEYCODE_HOME)
    {
        Log.e("HOME_PRESSED", "Ignoring HOME Button.");
        return true;
    }       
    else if (keyCode == KeyEvent.KEYCODE_BACK)
    {
        Log.e("BACK_PRESSED", "Ignore back pressing.");
        return true;
    }
            return super.onKeyDown(keyCode, event);
    }
    
  2. NewIntent メソッドを使用する。

    @Override
        protected void onNewIntent(Intent intent) {     
    super.onNewIntent(intent);      
    if (intent.getAction().equalsIgnoreCase(Intent.ACTION_MAIN))
    {
        Log.e("MAIN_PRESSED", "Ignoring MAIN Button.");
    }
    }
    

しかし、HOMEボタンを押すイベントをオーバーライドできません。

したがって、私の知識とログによると、ホームボタンを押すたびにそれがわかりました。

発火しACT-AM_ON_PAUSE_CALLEDます。(それについては知らない)

私はそれについてもっと知るためにこのことをグーグルで検索しようとしましたが、関連するものは何も見つかりませんでした!.

アプリケーションでホームボタンをオーバーライドするのを手伝ってください。

4

3 に答える 3

1

それは不可能であり、オーバーライドすることは禁止されています (セキュリティ上の問題)。これはフレームワークによって処理され、好きなことを行うことはできません。

于 2013-10-09T12:27:12.637 に答える