1

電話を振ったときに音楽を一時停止または再開したい。

問題は、携帯電話をポケットに入れて歩き回っているときに、携帯電話のシェイクイベントが誤って呼び出されることがあるということです。

だから、私は音量やオン/オフボタンを電話を振ることと組み合わせたい. 現時点で音量ボタンが押されているかどうかを確認するにはどうすればよいですか。

これを試しましたが、これはアプリがフォアグラウンドにある場合にのみ機能します。onkeydownリスナーなしで、現在押されているかどうかに関係なく、状態を取得するだけの可能性はありますか?

 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)){
        //Do something
    }
    return true;
}
4

1 に答える 1

1

まあ @sativa 通話時に通常使用するデバイスセンサープロパティを使用してそれを行うことができると思います。デバイスがポケットに入っているかどうかを確認できます。デバイスを耳に近づけます。この方向で考えると、それがあなたを助けるかもしれません

于 2013-10-24T09:20:53.073 に答える