我的应用程序有一个相当奇怪的行为。我在 BOOT_COMPLETE 之后启动我的应用程序,因此在我启动设备后它是可见的。GUI 反应灵敏,一切正常,直到我调用finish(),当按下按钮时,什么也没有发生。GUI 仍然有响应,并且没有产生 ANR 或可疑的 logcat 消息,所以我没有任何提示。
到目前为止,我尝试过:
- 附加调试器并跟踪调用,但我找不到任何东西
- 我检查了活动的运行实例(使用eclipse内存分析器),内存中只有一个
- 我暂停了发射,几秒钟后完成()工作正常(这是我目前的解决方法)
不幸的是,没有有用的代码可以发布来演示这个问题,因为在以后的任何时间点启动 Activity 时,一切都运行良好。
任何想法如何解决这个问题?
我在三星设备上运行 Android 2.1,我在 HTC Desire 上的 Android 2.2 上对其进行了测试,但这个错误在 Nexus 4 上没有发生,也没有在模拟器上发生,也许它是特定于设备/版本的。
编辑 这是活动清单条目
<activity
android:name=".activity.MyActivity"
android:enabled="false"
android:excludeFromRecents="true"
android:exported="false"
android:immersive="true"
android:launchMode="singleInstance"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</activity>