最近研究UWP推送通知,结果因为不懂状态犯了不少错误。状态图如下:
一个完整的应用程序生命周期经历的状态如下
1、应用程序第一次被开启,状态由 NotRunning 被激活(Activated)为 Running;
2、当用户点击 Start 按钮或者切换到其他应用,状态由 Running 暂停(Suspending)为Suspended;
3、当用户再次激活应用(如点击磁贴、任务切换、Toast 通知等),状态由 Suspended 恢复(Resuming)为 Running;
4、如果应用在 Suspended 状态下内存不足,系统会自动将应用程序终止(Terminate),状态由 Suspended变为 Not Running;
5、用户可以使用任务管理器强制关闭某个应用程序(CloseByUser),那么此时应用程序的状态也是由Suspended 变为 Not Running。
当应用处于关闭状态下,点击推送通知会触发激活应用,而此时应用如果已经关闭,需要重新恢复系统状态才行,否则只停留在启动界面。。。
相关开发数据下载群,欢迎喜欢UWP的交流