我为 android 制作了一个名为 MyApp 的应用程序,它在 ListView 中列出了安装在我的设备中的应用程序。当我单击 ListView 中的一行时,它会打开该行指向的应用程序。
如果我的 MyApp 打开的这个应用程序崩溃了,它会关闭 MyApp 并转到主屏幕。
有什么办法可以防止这种情况发生吗?我的意思是,如果由 MyApp 打开的应用程序崩溃,它只会崩溃并返回 MyApp,它们不会崩溃并转到主屏幕。
已编辑:
基于注释指示java.lang.RuntimeException
:“无法启动活动 ComponentInfo”
在您的示例中,您的ListView
应用程序被调用MyApp
,而正在启动的应用程序被调用App
。
在所有情况下,如果App
崩溃,执行将返回到MyApp
. 因此,崩溃发生在您的启动器MyApp
中。
为了阻止您的应用程序崩溃,请将startActivity()
or包装startActivityForResult()
在一个try/catch
块中。
然后,MyApp
在任何应用程序启动失败后,Activity 将保持可见。
此外,您必须有机会在块中显示一条Dialog
消息Toast
以catch()
通知用户错误。