[英]onPause not called by hitting Powerbutton
如果在应用程序当前正在运行onPause
时未按下该应用程序中的Powerbutton。 第一个问题:这在Android上常见吗?
我试图通过设置onKeyListener
来调用onPause
。 我可以为活动中的所有元素设置此onKeyListener
吗? 例如,我将其设置在我的realativeLayout
。
rLayout.setOnKeyListener(new View.OnKeyListener()
{
public boolean onKey(View v, int keyCode, KeyEvent event)
{
if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_POWER))
{
onPause();
}
return true;
}
});
但这也不起作用。 因此,现在的主要问题是:如果在应用程序当前运行时按下Powerbutton,您是否有可能调用onPause
? (不必是onKeyListener
)
当您的活动进入暂停状态时,系统会调用onPause()方法
http://developer.android.com/training/basics/activity-lifecycle/pausing.html
重要的是要注意,应用程序本身从不调用onPause本身,因为这很可能会破坏Activity的生命周期(由Android而非应用程序管理)。 如果用户按下电源按钮,则Android会自动暂停“活动”,无需在您的应用中执行任何操作。 如果您认为未调用onPause,请发布onPause代码。
我只是想在我的手机进入睡眠模式之前打电话给onPause
...
这是我的onPause
:
@Override
protected void onPause() {
super.onPause();
appactive = 0;
lastappactive = Calendar.getInstance().getTime();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.