Androidアプリケーションでデバイスのホームボタンのクリックを処理したい.グーグルで検索すると、この リンクが機能すると言われています.しかし、私はいくつか疑問があります.
すべての Android バージョンでサポートされていますか?サポートされていない場合、どのバージョンがサポートされていますか?
onAttachedToWindow() メソッドを使用しているため、何か影響はありますか?
ホームボタンのクリックを処理する方法はありますか(これを除く)?
前もって感謝します
Androidアプリケーションでデバイスのホームボタンのクリックを処理したい.グーグルで検索すると、この リンクが機能すると言われています.しかし、私はいくつか疑問があります.
すべての Android バージョンでサポートされていますか?サポートされていない場合、どのバージョンがサポートされていますか?
onAttachedToWindow() メソッドを使用しているため、何か影響はありますか?
ホームボタンのクリックを処理する方法はありますか(これを除く)?
前もって感謝します
これは、以前のバージョンでのみ機能します。しかし、OS バージョン 4.0 からは機能しません (ただし、私のエミュレーターでは API レベル 11 以降では機能しませんが、他の多くのリンクに従って ics を指しています)。
他の投稿でこれを見つけました。
古い Android バージョンでは、これは機能しています。しかし、Android はこれを変更しました。なぜなら、彼らは「ホーム ボタンはホーム ボタンのままにしておくべきだ」と言っており、誰もホーム ボタンを上書きしたくないからです。このため、コードはもう機能しません。
ホームボタンが押されたときに何かをしたい場合は、onPause メソッドでこれを行います。
ええ、その仕事はこのコードを試してみてください
@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;
};