UWP uygulamasında SystemIdentification ile sistemin benzersiz kimliğini oluşturmak

Bu makalede bir UWP uygulamasının çalıştığı bilgisayarın diğer bilgisayarlardan farklı kimlik bilgisini oluşturacağız.

Genellikle, uygulamanın çalıştığı bilgisayarı, uygulamanın çalıştığı diğer bilgisayarlardan ayırt etmek için buna ihtiyaç duyarız.

Böylece, uygulamamız aynı anda, aynı kullanıcı ile, birden fazla bilgisayarda çalışıyor olsa bile, belirlediğimiz bir tanesine bildirim gönderebilir, ondan gelecek mesajları ayrıca işleyebiliriz.

Hemen Visual Studio açalım ve yeni bir Windows Universal / Blank App (Universal Windows) projesi oluşturalım;

UWP projesi oluşturma

Oluşturacağımız benzersiz kimlik bilgisini (Unique System Identifier) ekranda görebilmek için MainPage.xaml dosyasına lblSystemIdentifier isminde bir TextBlock ekleyelim;

MainPage.xaml dosyasına eklediğimiz Loaded="Page_Loaded" kodu sayesinde, MainPage.xaml.cs dosyasına ekleyeceğimiz Page_Loaded() methodunda uygulamanın açıldığı anda yapmak istediklerimizi yapabileceğiz.

MainPage.xaml.cs dosyasını açalım ve Page_Loaded() methodunu oluşturalım.

Öncelikle SystemIdentification.GetSystemIdForPublisher(); methodunu çağırıyoruz.

Static olan SystemIdentification class’ının dokümantasyonuna göre GetSystemIdForPublisher() methodu geriye SystemIdentificationInfo sınıfından cevap döner.

Dokümantasyona göre GetSystemIdForPublisher() methodu uygulamanın yayımcısına ve bilgisayara özel bir cevap döner (Gets an identifier value for the system based on the app publisher ID), (Represents a unique system identifier based on either the app publisher ID or a user ID)

Yapmamız gereken, Windows.Storage.Streams namespace‘inde yeralan DataReader sınıfının FromBuffer() methodu ile bu değeri önce byte[] tipine sonra Convert.ToBase64String() ile string tipine dönüştürmek.

Proje çalıştırıldığında aşağıdaki gibi bir çıktı üretmeli;

İlgili diğer makaleler

blog comments powered by Disqus

Engin Polat hakkında

Senior Software Engineer, @Microsoft

Ada ve Ege'nin babası ;)

Kategoriler

İstatistik

Makale Adedi: 484

Creative Commons Lisansı