2013-04-24 57 views
3

我製作了一個名爲MyApp的應用程序,該應用程序在ListView中列出了安裝在我的設備中的應用程序。當我點擊我的ListView中的一行時,它會打開該行所指向的應用程序。不要關閉我的應用程序

如果我的MyApp打開的這個應用程序崩潰,它會關閉MyApp並進入主屏幕。

有什麼辦法可以防止這種情況發生?我的意思是,如果由MyApp打開的應用程序崩潰,它只會崩潰並回到MyApp,它們不會崩潰並進入主屏幕。

+1

使MyApp成爲主屏幕。 – CommonsWare 2013-04-24 19:28:36

+0

發生這種情況時,logcat輸出是什麼? – Tom 2013-04-24 19:32:25

+0

「無法啓動活動ComponentInfo」,那些崩潰的應用程序意味着崩潰,它們剛剛啓動,Android說「[Appname]已停止」,然後按「確定」,並關閉它們。我怎樣才能讓MyApp成爲主屏幕? – 2013-04-24 19:37:53

回答

0

編輯:
基於表示java.lang.RuntimeException評論: 「無法啓動活動ComponentInfo」


在你的榜樣,您的ListView應用程序被稱爲MyApp同時推出的應用程序被稱爲App

在所有情況下,如果App崩潰,執行將返回到MyApp。因此,崩潰發生在您的發射器MyApp

爲了阻止您的應用程序崩潰,請將startActivity()startActivityForResult()調用包裝在try/catch區塊中。

然後,MyApp活動將在任何應用程序啓動失敗後保持可見狀態。
此外,您必須有機會在catch()塊中顯示DialogToast消息,以通知用戶該錯誤。

+0

試過了,沒有工作。我幾乎可以肯定它的應用程序崩潰了,而不是MyApp,因爲android提到停止工作的包,而包不是來自MyApp,而是來自App。 – 2013-04-25 17:57:09