Le Windows Store app possono essere associate ad un URI Schema in modo che possano essere aperte da altre applicazioni, passando anche dei parametri.
Possiamo registrare uno Schema attraverso il tab Declarations del manifest.
Nella configurazione abbiamo associato lo Schema custom-app, in questo modo possiamo richiamare l'app semplicemente con un URI: custom-app://test-parameter.
Quando invochiamo questo URI, anche attraverso un browser, l'applicazione associata si avvia e scatta il metodo OnActivated dell'Application.
protected override void OnActivated(IActivatedEventArgs e) { base.OnActivated(e); if (e.Kind == ActivationKind.Protocol) { var args = e as ProtocolActivatedEventArgs; if (args != null) { var rootFrame = Window.Current.Content as Frame; rootFrame.Navigate(typeof(MainPage), args.Uri); Window.Current.Activate(); } } }
In tale metodo possiamo controllare la provenienza dell'attivazione dal parametro Kind di IActivatedEventArgs, nel caso di attivazione da URI, come possiamo vedere nello snippet, questo corrisponde a ActivationKind.Protocol.
Nella proprietà Uri di IActivatedEventArgs possiamo accedere all'indirizzo completo e recuperare i parametri usati nell'invocazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Routing statico e PreRendering in una Blazor Web App
Installare le Web App site extension tramite una pipeline di Azure DevOps
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Utilizzare politiche di resiliency con Azure Container App
Utilizzare la session affinity con Azure Container Apps
Definire lo stile CSS in base alle dimensioni del container
Hosting di componenti WebAssembly in un'applicazione Blazor static
Gestire undefined e partial nelle reactive forms di Angular
Short-circuiting della Pipeline in ASP.NET Core
Usare ASP.NET Core dev tunnels per testare le applicazioni su internet
Usare le collection expression per inizializzare una lista di oggetti in C#