2012-08-14 111 views
2

我知道可以使用MSApp.terminateApp來終止應用程序。怎麼樣重新啓動一個應用程序?有沒有重新啓動的命令?以編程方式重新啓動Windows應用商店應用程序

+0

爲什麼要這樣做? – 2012-08-15 00:31:43

+0

@JPAlioto有時,當我的應用程序進入不可恢復的狀態時,我想提供用戶重新啓動應用程序,而不是卡在那裏。 – 2012-08-15 02:23:44

+1

或者可能激活新選擇的語言。 – CSharper 2014-06-19 16:02:25

回答

2

重新啓動不適合Windows 8應用程序概念(以前稱爲metro)。如果你進入了一個不可恢復的狀態,那麼合適的事情就是讓它崩潰並讓Windows從那裏處理它。

here

應用程序崩潰

應用程序都需要按照系統崩潰的經驗,這是 簡單地返回到開始屏幕。系統崩潰體驗爲 ,旨在讓用戶儘快回到他們正在執行的操作,因此您不應該提供警告對話框或其他 通知,因爲這會導致用戶延遲。該應用程序的失蹤應該向用戶明確表示 出現問題。

如果您的應用崩潰,停止響應或生成異常,則Windows要求用戶同意將問題報告發送至 Microsoft。 Microsoft向您提供 問題報告中的錯誤數據的子集,以便您可以使用它來改進您的應用程序。 您可以在Windows開發人員中心Metro風格應用程序的 控制板中的應用程序質量頁面中看到此數據。 (請注意, 無法提交應用程序或查看您的應用程序的數據,直到Windows應用商店 打開通用提交。)

當用戶崩潰後啓動一個應用程序,它的激活事件 處理程序接收的ApplicationExecutionState值NotRunning和 應該只顯示其初始UI和數據。

+0

就我而言,我試圖在用戶註銷時重新啓動應用程序。看起來是清除數據並讓用戶再次登錄的最簡單方式,就像她在沒有用戶數據可用時一樣。 – pipedreambomb 2013-05-29 17:22:28

+0

@pipedreambomb如果我要做這樣的事情,我可能會把我所有的登錄數據等放到一個對象中,然後在註銷時簡單地替換掉這個對象。 – mydogisbox 2013-05-29 19:49:38

+0

當然,它已經存儲在roamingSettings中,所以我現在打電話來清除它。這是一個恥辱,我不能讓應用程序從頭開始重新啓動,但是在完成之後,整個UI都會刷新,而不是手動將其全部拆除,並使其看起來像啓動時一樣。 – pipedreambomb 2013-05-31 15:21:57

相關問題