0

Androidアプリケーションでデバイスのホームボタンのクリックを処理したい.グーグルで検索すると、この リンクが機能すると言われています.しかし、私はいくつか疑問があります.

  1. すべての Android バージョンでサポートされていますか?サポートされていない場合、どのバージョンがサポートされていますか?

  2. onAttachedToWindow() メソッドを使用しているため、何か影響はありますか?

  3. ホームボタンのクリックを処理する方法はありますか(これを除く)?

前もって感謝します

4

3 に答える 3

0

これは、以前のバージョンでのみ機能します。しかし、OS バージョン 4.0 からは機能しません (ただし、私のエミュレーターでは API レベル 11 以降では機能しませんが、他の多くのリンクに従って ics を指しています)。

于 2013-03-21T07:02:24.007 に答える
0

他の投稿でこれを見つけました。

古い Android バージョンでは、これは機能しています。しかし、Android はこれを変更しました。なぜなら、彼らは「ホーム ボタンはホーム ボタンのままにしておくべきだ」と言っており、誰もホーム ボタンを上書きしたくないからです。このため、コードはもう機能しません。

ホームボタンが押されたときに何かをしたい場合は、onPause メソッドでこれを行います。

于 2014-11-18T07:18:51.130 に答える
-1

ええ、その仕事はこのコードを試してみてください

@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);           
}

そして今、このような重要なイベントを処理します、

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if(keyCode == KeyEvent.KEYCODE_HOME)
{
 Log.i("Home Button","Clicked");
}
if(keyCode==KeyEvent.KEYCODE_BACK)
{

    finish();
 }
   return false;
};
于 2013-03-21T06:04:53.823 に答える