Condividi tramite


CoreApplication.RequestRestartAsync(String) Metodo

Definizione

Riavviare l'app.

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)

Parametri

launchArguments
String

Platform::String

winrt::hstring

Argomenti da passare all'istanza riavviata.

Restituisce

Stato della richiesta di riavvio.

Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 Fall Creators Update (è stato introdotto in 10.0.16299.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v5.0)

Esempio

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.");
    }
}

Commenti

  • L'app deve essere visibile e in primo piano quando chiama questa API.
  • Se il riavvio ha esito negativo, ma successivamente l'utente avvia l'app manualmente, l'app verrà avviata normalmente e non verranno passati argomenti di riavvio.
  • Se l'app non è stata avviata in modo normale, ma è stata avviata da un contratto di condivisione, selezione file, servizio app e così via, l'app non deve chiamare questa API perché l'utente non prevede il comportamento risultante.
  • L'app non deve richiedere una sessione di esecuzione estesa dopo aver chiamato questa API perché ciò comporterà un'esperienza utente scarsa.
  • Se l'app ha attività in background in-process in esecuzione quando chiama questa API, tali attività verranno annullate nel modo normale. Le attività in background non elaborate non saranno interessate.
  • Quando l'app viene riavviata, LaunchActivatedEventArgs.PreviousExecutionState avrà il valore Terminato in modo che l'app possa distinguere tra un ripreso e un riavvio.

Si applica a

Vedi anche