通过该代码我成功处理低于4.0版本的HomeKey但我在上4.0版本处理Homekey时遇到问题.所以请帮我解决这个问题来处理上层4.0版本的HomeKey印刷机.因为它不能禁用Home press.
@OverrIDe public voID onAttachedToWindow() { // Todo auto-generated method stub if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { super.onAttachedToWindow(); this.getwindow().setType(WindowManager.LayoutParams.TYPE_KEyguard); getwindow().setFlags(WindowManager.LayoutParams.FLAG_FulLSCREEN,WindowManager.LayoutParams.FLAG_FulLSCREEN);} }
解决方法:
正如@j__m所说,不再支持TYPE_KEyguard.还有许多其他方法已在其他问题上讨论过,但在最新的API级别中无效.我会省下你的努力,并希望分享一些我做过的搜索,试验和错误.我尝试了很多方法,但它们都没有在API级别17中为我工作.我尝试了答案
Call method when home button pressed on android,
Detect home button press in android和
我试过的一些(包括上面的答案)并且没有工作的是:
>在许多方面使用keyCode == KeyEvent.KEYCODE_HOME
综上所述.现在,如果您阅读了文档
KeyEvent.KEYCODE_HOME,它说这个键是由
框架,永远不会交付给应用程序.所以它不再
现在有效.
>我尝试使用onUserLeaveHint().文件说:
在活动开始时被称为活动生命周期的一部分
作为用户选择的结果进入后台.例如,
当用户按下Home键时,onUserLeaveHint()将会出现
呼叫,但当来电时导致呼叫中的活动
自动带到前台.
如果您没有在当前活动中调用任何活动,那么您可能会检测主页按钮
能够使用这种方法.这个问题
是在启动Activity时也会调用该方法
从您调用onUserleavelint()的活动中,
就像我的情况一样.有关详细信息,请参阅Android onBackPressed/onUserLeaveHint问题.所以它不确定
只需按回车键即可拨打电话.
最后,以下内容对我有用:
看到How to check current running applications in Android?,你可以说,如果你的是最近的任务,长按主页按钮,然后它被发送到后台.(即按下主页按钮).
因此,在您尝试检测按下的主页按钮的活动的onPause()中,您可以检查应用程序是否已发送到后台.
@OverrIDepublic voID onPause() { if (isApplicationSentToBackground(this)){ // Home button pressed // Do what you want to do on detecting Home Key being pressed } super.onPause();}
用于检查您的应用是否是最近发送到后台的应用的功能:
public boolean isApplicationSentToBackground(final Context context) { ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<RunningTaskInfo> tasks = am.getRunningTasks(1); if (!tasks.isEmpty()) { Componentname topActivity = tasks.get(0).topActivity; if (!topActivity.getPackagename().equals(context.getPackagename())) { return true; } } return false;}
使用此功能,我成功检测到主页按钮单击.
希望这也适合你.
以上是内存溢出为你收集整理的android – Home key处理冰淇淋三明治全部内容,希望文章能够帮你解决android – Home key处理冰淇淋三明治所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)