2011-10-28 44 views
3

我正在写一个应用程序,使人们处于危险中拨打911如何在睡眠模式下接收硬件按键事件?

这是它应该是如何工作的:

  1. 他(或她)觉得危险。
  2. 他按下音量减小键三次。
  3. 我的应用程序调用911

但我面临着以下问题:我怎么能接受睡眠模式一个hardward关键事件

我搜索了Google和其他搜索引擎,但找不到任何相关内容。

回答

1

我认为你可以这样做的唯一方法是使用BroadcastReceiver,但似乎在屏幕关闭时音量按钮不会生成意图(请参阅here)。您可以做的最接近的事情是使用相机按钮来做类似的事情。

虽然这也许是更好的方法。我想如果他们的手机由于音量按钮或相机按钮而在他们的口袋中称为911,则会使用户恼火。另外,这不是我期望会发生的事情。

+0

感谢您的建议。 但我怎么能在睡眠模式下接收相机按钮事件? 我需要使用BroadcaseReceiver的详细方法...... 谢谢。 –

+0

你好,我试图在手机处于睡眠模式时接收音量上下变化的事件,我经历了这个论坛中的大部分答案,没有具体的答案可能与否。一些Android手机,不像HTC那样拍照按钮。任何帮助非常感谢...我只看着设备处于睡眠状态时音量按钮的事件 –

2
public class YourBoardcastReceiver extends BroadcastReceiver { 
     @Override 
     public void onReceive(Context context, Intent intent) { 
       if (Intent.ACTION_CAMERA_BUTTON.equals(intent.getAction())) { 
         Intent main = new Intent();// 
       } 
     } 
} 

而在你的清单:

<receiver android:name="YourBoardcastReceiver"> 
       <intent-filter> 
         <action android:name="android.intent.action.SCREEN_ON" /> 
       </intent-filter> 
</receiver> 
+0

非常感谢!你的建议是非常有益的! –

+0

不客气,如果它适用于您,您可以应用绿色刻度标记 – Reno

+0

Hello Reno,在休眠模式下是否可以捕捉音量上下按钮?我可以在屏幕解锁时使其工作。任何输入非常感谢!我特别关注在音量按钮的睡眠模式下获取事件 –