我一直在努力尝试通过覆盖onStop()
和来使我的程序正常运行onDestroy()
,但是像在此youtube视频http中一样,通过使用滑动技术在Nexus上关闭应用程序时,这些事件似乎并不正确://youtu.be/1HBW7FG-xcQ?t = 22s
@Override
protected void onStop() {
super.onStop();
Log.d("onStop", "Yay, we are in!");
datasource.Open();
datasource.UpdateIsPlaying(0);
datasource.Close();
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d("onDestroy", "Yay, we are in!");
datasource.Open();
datasource.UpdateIsPlaying(0);
datasource.Close();
}
@Override
protected void onPause() {
super.onPause();
Log.d("onPause", "Yay, we are in!");
datasource.Open();
datasource.UpdateIsPlaying(0);
datasource.Close();
}
您确定要正确覆盖这些方法吗?
如果活动完成,则将触发onDestroy方法。完成就不可能不被触发。
我认为发生的是该手势未完成应完成的应用程序,或者只是在后台运行。
您是否尝试覆盖onPause?
http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle
但是,如果您阅读活动文档:
在某些情况下,系统会简单地终止活动的托管过程,而无需在其中调用此方法(或任何其他方法),因此不应将其用于处理在过程消失后仍然存在的事情。
也许此手势可以直接清除RAM或执行任何操作,而无需遵循Android标准。我想如果发生这种情况,您在尝试接收回调时会遇到麻烦。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句