私のアプリケーションでは、シェイク イベントを検出したいのですが、SensorEventListener を使用しています。アクティビティがフォアグラウンドで実行されている場合、コードは正常に動作しています。しかし、電話のロックボタンを押して画面をロックすると、シェイクイベントが検出されません。Samsung gts5360 でコードをテストしました。しかし、同じコードがsony ericssion xperia mini proでも問題なく動作しています。実際、デバイスを約 1 分間アイドル状態のままにしておくと、Samsung の携帯電話は振動イベントを検出しません。デバイスをロックしてから 45 秒。
それから私は電話を振って、それは揺れを検出しませんが、数秒遅れて電話を振ると、揺れを聞き始めます。私のサムスンの携帯電話のこの動作は一貫していません. シェイクイベントのリスニングを開始し、ランダムな時間が経過すると停止します。
ここで私の質問は、「これは、画面がロック/オフのときにデバイスが揺れイベントを検出しないという Android の機能ですか?」ということです。
もしそうなら、電話を数秒間ロックした後、私のサムスンの電話はどのようにリスニングを開始/停止しますか?
また、「Sony ericssion Xperia mini pro」で画面のロック/オフ時に揺れイベントを継続して聞くのはどうですか?
この機能はベンダーごとに異なりますか?
誰かが私のコードを必要とする場合は、私に知らせてください。私はそれを提供します。