CoreApplication.RequestRestartAsync(String) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重新启动应用。
public:
static IAsyncOperation<AppRestartFailureReason> ^ RequestRestartAsync(Platform::String ^ launchArguments);
/// [Windows.Foundation.Metadata.RemoteAsync]
static IAsyncOperation<AppRestartFailureReason> RequestRestartAsync(winrt::hstring const& launchArguments);
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<AppRestartFailureReason> RequestRestartAsync(string launchArguments);
function requestRestartAsync(launchArguments)
Public Shared Function RequestRestartAsync (launchArguments As String) As IAsyncOperation(Of AppRestartFailureReason)
参数
- launchArguments
-
String
Platform::String
winrt::hstring
要传递给重启实例的参数。
返回
重启请求的状态。
- 属性
Windows 要求
设备系列 |
Windows 10 Fall Creators Update (在 10.0.16299.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v5.0 中引入)
|
示例
private async void DoMajorAppReconfiguration()
{
// Attempt restart, with arguments.
AppRestartFailureReason result =
await CoreApplication.RequestRestartAsync("-fastInit -level 1 -foo");
// Restart request denied, send a toast to tell the user to restart manually.
if (result == AppRestartFailureReason.NotInForeground
|| result == AppRestartFailureReason.Other)
{
SendToast("Please manually restart.");
}
}
注解
- 应用在调用此 API 时必须可见和前台。
- 如果重启失败,但用户随后手动启动应用,应用将正常启动,并且不会传递任何重启参数。
- 如果应用不是以正常方式启动的,而是由共享协定、文件选取器、应用服务等启动的,则应用不应调用此 API,因为用户不会期望得到结果行为。
- 应用在调用此 API 后不应请求扩展执行会话,因为这会导致用户体验不佳。
- 如果应用在调用此 API 时运行了任何进程内后台任务,则这些任务将以正常方式取消。 进程外后台任务不会受到影响。
- 重启应用时, LaunchActivatedEventArgs.PreviousExecutionState的值将 终止,以便应用可以区分恢复和重启。