Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Artık program aracılığıyla kullanıcılardan Win32 veya WinUI uygulamanızı görev çubuğuna sabitlemelerini isteyebilirsiniz. Örneğin, uygulamanızı Başlat menüsüne sabitleyebilirsiniz. Ayrıca uygulamanızın şu anda sabitlenip sabitlenmediğini ve görev çubuğunun sabitlemeye izin verip vermeyeceğini de de kontrol edebilirsiniz.
Important
Fall Creators Update'iGerektirir: Görev çubuğu API'lerini kullanmak için SDK 16299'u hedeflemeli ve derleme 16299 veya üzerini çalıştırmalısınız.
Önemli API'ler: TaskbarManager sınıfı
Kullanıcıdan uygulamanızı görev çubuğuna ne zaman sabitlemesini istemeniz gerekir?
TaskbarManager sınıfı, kullanıcıdan uygulamanızı görev çubuğuna sabitlemesini istemenizi sağlar; kullanıcının isteği onaylaması gerekir. Harika bir uygulama oluşturmak için çok çaba harcıyorsunuz ve şimdi kullanıcıdan görev çubuğuna sabitlemesini isteme fırsatınız var. Ancak kodu incelemeden önce, deneyiminizi tasarlarken göz önünde bulundurmanız gereken bazı şeyler şunlardır:
- Net bir eylem çağrısıyla uygulamanızda kesintiye neden olmayan ve kolayca kapatılabilir bir UX oluşturun. Bu amaçla iletişim kutularını ve açılır menüleri kullanmaktan kaçının. Erişilebilir sabitleme simgeleri veya benzer Kullanıcı Deneyimi (UX) önerilir ancak gerekli değildir.
- Kullanıcıdan sabitlemesini istemeden önce uygulamanızın kullanıcıya değer sağladığından emin olun.
- Kutucuk zaten sabitlenmişse veya cihaz uygulamayı desteklemiyorsa kullanıcıdan uygulamanızı sabitlemesini istemeyin. (Bu makalede sabitlemenin desteklenip desteklenmediğinin nasıl belirleneceği açıklanır.)
- tekrar tekrar kullanıcıdan uygulamanızı sabitlemesini istemeyin (büyük olasılıkla rahatsız olurlar).
- Kullanıcının açık bir etkileşimi olmadan veya uygulamanız simge durumuna küçültüldüğünde ya da açık olmadığında Pin API'sini çağırmayın. İşlemin çalışması için uygulamanızın ön planda olması gerekir.
- API'yi çağırmak için yükleyicileri kullanmayın.
Sınırlı Erişim Özelliği (LAF) onayı
Important
Görev Çubuğu Sabitlemesi Sınırlı Erişim Özelliğidir (bkz. LimitedAccessFeatures sınıfı). Daha fazla bilgi edinmek veya kilit açma belirteci istemek için lütfen LAF Erişim Belirteci İstek Formukullanın.
1. Gerekli API'lerin mevcut olup olmadığını denetleyin
Win32
WIn32 masaüstü uygulamanızdan kullanmak TaskbarManager istiyorsanız masaüstü uygulaması desteğinin mevcut olup olmadığını denetlemeniz gerekir. Bu denetimi gerçekleştirmek için ITaskbarManagerDesktopAppSupportStatics etkinleştirme fabrikasında TaskbarManager işaretleyici arabirimini arayabilirsiniz. Bu arabirim kullanılamıyorsa masaüstü uygulamanızdan kullanamazsınız TaskbarManager .
if (winrt::try_get_activation_factory<winrt::Windows::UI::Shell::TaskbarManager, winrt::Windows::UI::Shell::ITaskbarManagerDesktopAppSupportStatics>())
{
// TaskbarManager desktop app support is available.
}
else
{
// TaskbarManager desktop app support is not available.
}
2. Görev çubuğunun mevcut olup olmadığını ve sabitlemeye izin verip vermediğini kontrol edin.
Windows uygulamaları çok çeşitli cihazlarda çalışabilir; hepsi görev çubuğunu desteklemez. Şu anda görev çubuğunu yalnızca Masaüstü cihazları destekler. Ayrıca, uygulamalar sabitleme isteğinde bulunabilir, ancak herhangi bir zamanda sabitlemeye izin verilmeyebilir. Kullanıcıları kafa karışıklığından korumak için, uygulamaların UX ortaya çıkmadan önce sabitlemeye izin verilip verilmediğini kontrol etmesi önerilir.
Görev çubuğu kullanılabilir olsa bile, kullanıcının makinesindeki bir grup ilkesi görev çubuğu sabitlemeyi devre dışı bırakabilir. Bu nedenle, uygulamanızı sabitlemeye çalışmadan önce görev çubuğuna sabitlemenin desteklenip desteklenmediğini denetlemeniz gerekir. Görev çubuğu mevcutsa ve sabitlemeye izin veriyorsa TaskbarManager.IsPinningAllowed özelliği true değerini döndürür.
// Check if taskbar allows pinning, apps may request pinning, but pinning may not be allowed at any given time. It is suggested that apps check whether pinning is allowed before a UX is surfaced in order to prevent confusing users.
bool isPinningAllowed = TaskbarManager.GetDefault().IsPinningAllowed;
Important
Pin isteğinin izin vermesi için çağrı yapıldığı sırada karşılanması gereken gereksinimler de vardır:
- Uygulama ön planda
- Uygulamanın Başlat menüsü girdisi var
- Bildirimlerin görüntülenmesi için kullanıcının sistem bildirimlerinin etkinleştirilmiş olması gerekir. Bu gereksinimi uygulamanın UX'indeki kullanıcılara ortaya çıkarmanızı öneririz.
Bu gereksinimler karşılanmadığı takdirde bir özel durumla sonuçlanmaz, pin isteği reddedilir.
IsPinningAllowed bir pin isteğine (istem) izin verilip verilmediğini belirlemek için çağrılabilir.
Note
Uygulamanızı görev çubuğuna sabitlemek istemiyor ancak yalnızca görev çubuğunun kullanılabilir olup olmadığını öğrenmek istiyorsanız TaskbarManager.IsSupported özelliğini kullanın.
3. Uygulamanızın şu anda görev çubuğuna sabitlenip sabitlenmediğini denetleyin
Açıkçası, zaten orada sabitlenmişse, kullanıcıdan uygulamayı görev çubuğuna sabitlemenize izin vermesini istemenin bir anlamı yoktur. Kullanıcıya sormadan önce uygulamanın zaten sabitlenmiş olup olmadığını denetlemek için TaskbarManager.IsCurrentAppPinnedAsync yöntemini kullanabilirsiniz.
// Check whether your app is currently pinned
bool isPinned = await TaskbarManager.GetDefault().IsCurrentAppPinnedAsync();
if (isPinned)
{
// The app is already pinned--no point in asking to pin it again!
}
else
{
//The app is not pinned.
}
4. Uygulamanızı sabitleyin
Görev çubuğu mevcutsa ve sabitlemeye izin veriliyorsa ve uygulamanız şu anda sabitlenmemişse, kullanıcılara uygulamanızı sabitleyebileceklerini bildirmek için ince bir ipucu göstermek isteyebilirsiniz. Örneğin, kullanıcı arabiriminizin herhangi bir yerinde kullanıcının tıklayabileceği bir iğne simgesi gösterebilirsiniz.
Kullanıcı pin öneri kullanıcı arabiriminize tıklarsa TaskbarManager.RequestPinCurrentAppAsync yöntemini çağırırsınız. Bu yöntem, kullanıcıdan uygulamanızın görev çubuğuna sabitlenmiş olmasını istediğini onaylamasını isteyen bir iletişim kutusu görüntüler.
Important
Bu, ön plan UI iş parçacığından çağrılmalıdır, aksi takdirde bir özel durum oluşacaktır.
// Request to be pinned to the taskbar.
bool isPinned = await TaskbarManager.GetDefault().RequestPinCurrentAppAsync();
Bu yöntem, uygulamanızın şimdi görev çubuğuna sabitlenip sabitlenmediğini gösteren bir boole değeri döndürür. Uygulamanız zaten sabitlenmişse, yöntem kullanıcıya iletişim kutusunu göstermeden true hemen döndürür. Kullanıcı iletişim kutusunda "hayır"a tıklarsa veya uygulamanızı görev çubuğuna sabitlemeye izin verilmiyorsa yöntemi döndürür false. Aksi takdirde, kullanıcı "Evet"e tıklayarak uygulamayı sabitler ve API true döndürür.
Resources
Windows developer