当用户在我的应用程序中按下后退按钮时。下面是这种情况:进入ANR模式的应用程序
- 用户启动应用程序 - 活动 显示出来
- 用户按下后退按钮
- 用户重新启动应用程序。 此时,应用程序仅显示一个空白屏幕,但在某些时间后,没有任何按钮(家庭/后台)响应,此时会出现强制关闭对话框。
注意:如果用户按下“Home”,然后重新启动应用程序,则不会发生此情况,只有在用户按下“Back”后才能重新启动。
在我的onCreate()我有一些网络设置代码。但是,onDestroy()有相应的清理代码,所以我不明白为什么会发生这种情况。
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d(DEBUG_TAG, "onCreate()");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Aquire the multicast lock
// Create an instance of JmDNS
// Add a listener for Bonjour services of a given type
}
@Override
protected void onDestroy() {
Log.d(DEBUG_TAG, "onDestroy()");
// Remove the services listener
// Set the reference to JmDNS instance null
// Release the multicast lock
super.onDestroy();
}
不知道是怎么回事,也不知道如何调试。
有趣 - "Zeroconf Browser"流行的应用程序,我从Android Market下载使用调试雷 - 似乎有同样的问题。
编辑:将onStart()/ onStop()代码更改为onCreate()/ onDestroy()。和以前一样的问题。
编辑:对于任何人在类似的问题中运行,这是什么导致我的痛苦。 Android代码不是罪魁祸首: http://sourceforge.net/tracker/index.php?func=detail&aid=2933183&group_id=93852&atid=605791
当你按下后退按钮时,活动被破坏,所以第二次,它在'onCreate()'中被卡住了。那里会发生什么? – bigstones 2011-03-30 19:39:52
@Travis你可以标记,但这是BACK按钮的默认行为:http://developer.android.com/guide/practices/ui_guidelines/activity_task_design.html#navigating_away_from_an_activity – bigstones 2011-03-30 20:01:34
@bigstones:+1。你是绝对正确的。活动**被毁坏。那是导致应用程序挂起的原因...在我的onDestroy()方法中存在一个错误。万分感谢! – OceanBlue 2011-03-30 20:36:11