我们有一个工业控制应用程序,主屏幕包含按钮,用于启动活动以控制特定的工业流程。该应用程序预装在仅用于此目的的Android设备(三星手机)上。
在Android 2.36,API 8的原始版本中,仍然可以禁用“主页”按钮,我们这样做了,因此用户无法在不通过主屏幕的情况下意外退出其中一个流程活动。但从那时起,我们已升级到运行Android 4.42的新设备,并升级到API 16以利用一些新功能,因此我们无法再禁用主页按钮。 ( NB - 已经广泛讨论了阻止主页按钮后API 16的实际不可能性,但主要是How to disable Home and other system buttons in Android?和How to disable home button in Android like lock screen apps do?所以我考虑到这个问题已经解决了)只要我们能够通知WiFi连接的另一端的工业设备,这已经完成,所以它不会认为屏幕仍在运行。
所以我的问题是 - 从我的活动,如何判断我的活动是否因为按下主页按钮而被关闭,而不仅仅是应用程序本地的某个活动?换句话说,如果以正常方式关闭Activity,它会处理 onPause()和 onStop(),但它也会在按下Home按钮时处理这些事件所以我这样做是为了什么呢?
答案 0 :(得分:0)
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyCode.KEYCODE_HOME){
//your code here
}
}
这应该有效。 link