我想在有人按下主页按钮时向我的应用程序发送一个事件:
(带有向左箭头的银色按钮是 HTC Smart 上的主页按钮。)
但是,当我按下按钮时,根本 没有事件到达我的应用程序。如果我连接系统记录器,我会看到 Brew MP OS 本身检测到一些东西,但它没有到达我的应用程序。
[CORE] CoreDaemon_HandleEvent: 111
[CORE] CoreDaemon_HandleEvent: 112
我可以注册这些事件以便操作系统将它们传递给我吗? (或者在我的应用程序中检测主页按钮所需的一切。)
我怀疑 [ISHELL_RegisterNotify][2]
函数可能是我要找的,但我不知道如何使用它。我试过:
ISHELL_RegisterNotify(piShell, AEECLSID_OF_MY_APP, AEECLSID_CORE, NMASK_SHELL_KEY |(NOTIFIER_VAL_ANY << 16));
那没有用,这个也没有:
ISHELL_RegisterNotify(piShell, AEECLSID_OF_MY_APP, AEECLSID_CORE, ~0);
我有点希望最后一个能让我得到所有“核心”事件,但那两个都没有任何区别。
最佳答案
应用程序将首先收到一个带有 wParam=63620 的 EVT_KEY
,然后立即收到 EVT_APP_SUSPEND
事件。
因此,据我所知,Brew 应用程序无法以任何有意义的方式使用“主页按钮”进行输入。
关于c++ - HTC Smart 中的主页按钮事件是否传送到我自己的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6651439/