以编程方式检测硬件呼叫/挂断密钥的存在

时间:2010-06-02 11:25:05

标签: android

我的一个客户想要一个返回布尔值的代码方法。如果Android手机具有硬件红色/绿色呼叫/挂断键,则为True,否则为假。

Sonething是这样的:

public void keyFeedbackFromInput(KeyEvent event) {
  if (event.getAction() == KeyEvent.ACTION_DOWN 
        && (event.getFlags() & KeyEvent.FLAG_VIRTUAL_HARD_KEY) != 0) {
    // perform your logic here
  }
}

但不是在上面的代码段中的按键事件中。如果手机有物理红/绿键或虚拟键,他需要预先确定。

是否有可能,如果是,有人可以提供代码示例来实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

编辑:

没有电话可以获得这种信息。 您可以尝试使用以Build.MODEL为密钥的字典。 类似的东西:

/* Create the dictionary */
private HashMap<String, Boolean> redGreenKeys = new HashMap<String, Boolean>();
redGreenKeys.put("Milestone", false);


public Boolean hasRedGreenButtons() {
    Boolean ret = redGreenKeys.get(Build.MODEL);
    if ( ret == null )
        return false;

    return ret;
}