HoloLensのUnityアプリをアプリ内から終了させたい場合の方法について説明します.
HoloLensのアプリ
HoloLensで実行されるアプリはすべてUniversal Windows Platform(UWP)形式で動作しています.
UnityでUWPアプリを作成する場合Player Settings
のVirtual Reality Supported
にチェックを入れることで3Dアプリを実行することができます.
通常HoloLensの3Dアプリを終了する場合にはBloomジェスチャーでホームに戻ることができます. しかし,アプリ起動後にホームに戻っただけではサスペンド状態に移行しただけでしばらくはメモリの解放などが行われません. アプリを完全に終了させるためにはホームに設置された対象アプリの2Dウィンドウを削除する必要があります.
Unityからのアプリ終了処理
UWPビルドされたUnityアプリはUWP内でUnityアプリが動作しているイメージです.
そのためUnityアプリを終了するためのApplication.Quit()
のみではUnity側が終了するだけでUWP側は終了しません.(何も表示されない画面のままになる)
UWPビルドのUnityアプリを完全に終了するためにはUWP側の終了関数であるWindows.ApplicationModel.Core.CoreApplication.Exit()
を呼び出してあげる必要があります.
|
|
まとめ
- そもそも終了処理を必要としないアプリを作成したい
- 関数単位の機能は HoloLensModule にまとめていきたい