Warning: Trying to access array offset on value of type bool in /home/koheizi/everything-beginner.com/public_html/programmer/wp-content/themes/luxeritas/inc/json-ld.php on line 114

最底辺は、Androidのホームボタンまで無効化しようとする

こんばんは。
最底辺です。

暑くてだらけていたので、前回のブログの更新から時間が立ってしまいました。
え?いつも遅いって。

最底辺なので、言い訳だけは一人前です!!
えぇ、自慢するところではないですね。。。

さて、今回、アプリ作成で、ボタンをロックさせようかと思いまして、そのための機能をつくりこんでみました。
ふむふむ、ActivityでdipatchKeyEventなる関数をオーバーライドすればいいようです。

    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        synchronized (mutex) {
            if (lockSwitch) return true;
        }
        return super.dispatchKeyEvent(event);
    }

これで、lockSwitchのフラグが経っているときは、キーが無視されるだろうと思い、
ホームキーを押すとホーム画面に戻ってしまう。。。
だめじゃん!

どうすればいいかと途方にくれていた所、
何でもホームアプリなるものを使うことで解決できるようですが、
なんか、実装を失敗すると、端末が文鎮になるとか。。。
いやあ、最底辺に無理でしょ!そんなの!!

ということで、ホームボタン(あとメニューボタン)は、諦めてることにしました。
こういう需要ってあんまりないのですかねえ。
特定ソフトだけ動かす業務アプリとかで使いそうなのですが。
(まあ、そういう人はホームアプリとかいうのを使うか。)

では。