我们有一个工业控制应用程序,主屏幕包含按钮,启动活动来控制特定的工业过程。这款应用程序预装在仅用于此目的的Android设备(三星手机)上。
在Android2.36 API 8的原始版本中,仍然可以禁用Home按钮,因此用户不可能在不通过主屏幕的情况下意外退出其中一个进程活动。但是从那以后,我们已经升级到运行Android4.42的新设备,以及API 16来利用一些新的功能,所以我们不能再禁用home按钮了。(NB -广泛讨论阻止家庭按钮后API 16的实际可能性,但主要是如何禁用Android中的Home和其他系统按钮?和如何像锁定屏幕应用程序一样禁用Android中的主按钮?,因此我认为这个问题已经解决)只要我们能够通知WiFi连接另一端的工业设备,这样做就不会让屏幕仍然打开。
所以我的问题是--从我的活动中,如何知道我的活动是由于按了Home按钮而关闭的,而不仅仅是应用程序的本地事件?换句话说,如果活动以正常的方式关闭,它会处理onPause()和onStop(),但在按Home按钮时也会处理这些事件,所以我会厌恶这些情况吗?
发布于 2017-06-15 23:55:07
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyCode.KEYCODE_HOME){
//your code here
}
}
这应该能行。链接
https://stackoverflow.com/questions/44578284
复制相似问题