天天看點

【Win 10 應用開發】應用預啟動

所謂預啟動,其實你一看那名字就知道是啥意思了,這是直接譯,也找不到比這個叫法更簡練的詞了。在系統資源允許的情況下(比如電池電量充足,有足夠的記憶體空間),系統會把使用者常用的應用程式在背景啟動,但不會顯示使用者界面。在預啟動時,可以事先初始化一些資料,等到使用者正式啟動應用時,呈現界面的效率就有所提升。

預啟動的時候,應用程式仍然會調用 OnLaunched 方法的,在 OnLaunched 方法調用之後,會馬上發生 Suspending 事件,随後應用就會暫停。

當使用者正式啟動應用時,同樣也會調用 OnLaunched 方法,那麼,如何知道應用程式是正式啟動還是預啟動呢。OnLaunched 方法的參數有一個 PrelaunchActivated 屬性,布爾類型,如果這個屬性為真,說明目前調用是預啟動;否則就是正式啟動。是以,在處理 OnLaunched 方法時,隻要判斷這個屬性就可以了,當它為false時,才去建立使用者界面。

應用項目預設生成的模闆代碼是這樣的:

 它是先執行個體化作為UI根的 Frame 對象,然後再判斷它是否為預啟動,如果不是,就導航到首頁面。

我們可以幹脆這樣修改:

反正不建立UI了,弄個 Frame 在那裡也沒什麼毛用,不如直接等到正式啟動時再建立 Frame 。

補充一下,在e.PrelaunchActivated之前,需要調用以下代碼來開啟預啟動:

參數是布爾類型,true表示啟用預啟動,false表示禁用預啟動。

OK,現在大夥兒都知道怎麼判斷預啟動了,那麼,我如果要調試預啟動,該做啥。要對預啟動進行調試,不要直接運作調試,因為直接運作是進入正式啟動方式,而不是預啟動。

正确的操作是:依次執行菜單【調試】-【調試其他目标】-【調試通用 Windows 應用預啟動】,然後就會執行 OnLaunched 方法,而 PrelaunchActivated 屬性就能傳回 true。

【Win 10 應用開發】應用預啟動

 在調試的時候,應用不會引發 Suspending 事件,你可以通過【調試位置】工具欄控制應用進入 Suspend 狀态。

好了,本文内容實在太簡單了,為了節約時間,此處省略 310 個字…… 本文結束。

繼續閱讀