Birçok uygulama için kendini kapatıp tekrar başlatma (özellikle de değiştirilen bir ayarı veya lisansı güncelleyerek başlatma) sıklıkla ihtiyaç duyulan bir özelliktir.
Windows 10 UWP uygulamalarını kapatmak için Windows.ApplicationModel.Core namespace’inde yeralan CoreApplication sınıfının Exit()
methodunu çağırmamız yeterli.
Fakat uygulamanın tekrar başlatılmasını kullanıcıdan beklemek zorunda kalıyoruz. Daha iyi bir kullanım deneyimi için aslında uygulamanın kendisini kapatıp tekrar başlatabilmesi lazım.
Windows 10 UWP projelerinde, uygulamanın kendini kapatıp tekrar başlatabilmesini sağlamak, aslında çok kolay.
Önemli not : Bu özelliğin çalışması için bilgisayarda Windows 10 Build 16226 veya sonrası kurulu olmalı
Hemen yeni bir Visual Studio açalım ve Windows 10 UWP projesi oluşturalım, ben bu makalede projeme RestartProject ismini verdim.
Öncelikle MainPage.xaml dosyasını açalım ve aşağıdaki şekilde güncelleyelim;
Şimdi MainPage.xaml.cs dosyasını açalım ve aşağıdaki kodları yazalım;
Bu seçim ile yeniden başlat butonuna tıklandığı zaman, CoreApplication sınıfında yeralan RequestRestartAsync()
methodunu çağırıyoruz.
RequestRestartAsync()
methodu parametre alabiliyor ve bu parametreyi, uygulama baştan başlatıldığı zaman App.xaml.cs dosyasında yeralan OnActivated() methoduna gönderiyor.
Projede yeralan App.xaml.cs dosyasını açalım ve aşağıdaki kodları yazalım;
Böylece ekrandaki listeden seçili olan öğreyi uygulama kapanıp tekrar açılırken parametre olarak kullanıyoruz. Uygulama tekrar başladığı zaman seçili olan öğe seçili olarak başlatılıyor.
Örnek kullanım alanları;
Bu makale How to Restart your App Programmatically makalesi baz alınarak yazılmıştır :)
Senior Software Engineer, @Microsoft
Ada ve Ege'nin babası ;)
Makale Adedi: 484