我一直试图通过覆盖onStop()
和onDestroy()
来让我的程序正确行事,但是当关闭Nexus上的应用程序时,这些事件似乎并不恰到好处使用滑动技术,就像他在YouTube视频中http://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();
}
答案 0 :(得分:0)
你确定你正确地覆盖了这些方法吗?
如果活动完成,则触发onDestroy方法。如果完成它是不可能被触发的。
我假设正在发生的事情是,这个手势,并没有完成应用程序,因为它应该完成,或者它可能只是在背景上。
你试过覆盖onPause吗?
http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle
但是,如果您阅读活动文档:
在某些情况下,系统会在不调用此方法(或其他任何方法)的情况下简单地终止活动的托管过程,因此不应该使用它来执行过程消失后要保留的内容。
也许这个手势直接清除RAM或不管它做什么,而不遵循Android标准。我想如果发生这种情况,你会在尝试接收回叫时遇到麻烦。
答案 1 :(得分:0)
您是否尝试使用以下地点finish();
从您要退出应用的位置开始。