【发布时间】:2012-09-26 08:52:31
【问题描述】:
安卓问题: 此问题仅在安装并单击打开按钮后第一次出现,在使用启动器图标启动应用程序后,问题将永远不会出现。
-
重现问题的步骤。
- 安装任何 .apk 文件
- 安装后,您将获得“打开”和“完成”两个按钮。
- 单击“打开”按钮打开/启动应用程序。
- 现在在您的应用程序中导航并转到任何其他屏幕,例如第二个屏幕、第三个屏幕。
- 现在,按 Home 并将应用程序置于后台(意味着处于暂停状态)。
- 现在转到应用程序列表单击同一应用程序的启动器图标。
-
发生了什么。
- 它正在从第一个屏幕的起点启动相同的应用程序。
- 它必须在第三个屏幕上恢复正在运行的应用程序。
- 现在按返回键并从第二次启动应用程序的第一个屏幕中退出。
- 它正在显示第一次运行应用程序的第三个屏幕。
我已经向您解释了安装后的一般行为并使用打开按钮启动应用程序。 在我的应用程序中,它会创建 2 次启动应用程序的不一致状态。
-
你认为正确的行为应该是什么。
- 应用程序必须恢复。
- 应用程序不得处于不一致的状态。
我有一些日志..
- 点击“打开”按钮日志:
10-04 21:45:28.703:INFO/ActivityManager(243):开始活动:Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=com.test/.TestnewversionActivity } 来自 pid 15146。
“查看以上意图中未添加的类别”
- 点击“启动器”图标的日志:
10-04 21:46:46.109: INFO/ActivityManager(243): 开始活动: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com .test/.TestnewversionActivity } 来自 pid 428
“请参阅上面意图中添加的类别”。
如果有人告诉我如何解决此问题或告诉我如何在“打开”按钮单击时将类别添加为 android.intent.category.LAUNCHER,那么问题将解决。
我尝试在应用启动、oncreate 和许多地方添加类别。 intent.addCategory("android.intent.category.LAUNCHER"); 还尝试使用 IntentFilter、PackageManager。
每个 Android 手机都有这个问题。
我在 HTC-SENSE 上记录了日志 安卓版本 2.3.3
【问题讨论】:
-
这是一个众所周知且长期存在的 Android 错误。查看我的回答stackoverflow.com/a/16447508/769265 或stackoverflow.com/a/14067139/769265