网络上有许多关于启动毛伊岛新应用程序的文章(和视频(。微软的Maui文档确实讨论了MauiApp的生命周期,并列举了为每个受支持的平台触发适当事件的委托。我一直找不到任何具体的例子来说明如何启动除创造之外的任何这些事件。具体来说,我如何启动MauiApp关闭,无论是让应用程序进入睡眠状态,还是根据平台的情况将其从内存中删除?Maui元数据提到了Quit()
、StopAsync()
和CloseWindow()
等过程,但我一直无法获得其中任何一个(至少在调试时(来实际终止应用程序。
对于Android应用程序:
Application.Current.Quit();
我测试了它,它有效。
它与其他平台兼容,但我没有测试。
对于Windows桌面,这是有效的:
Application.Current?.CloseWindow(Application.Current.MainPage.Window);
给出的每个答案都是不完整的。.Net Maui支持WinUI、Android、MacCatalyst以及Tizen上的多窗口,但不支持iOS。仅仅调用Application.Current.Quit()
只会关闭Window,并结束从中调用它的实例的应用程序。
要正确结束应用程序,您需要首先关闭所有派生的非主窗口,然后Quit
主窗口或关闭其窗口。
现在可以说这是一个错误,调用Quit应该会结束一切,但至少目前没有,所以给出的答案至少似乎不知道这一事实。