Kol saatlerindeki bildirimler, telefonlardaki bildirimlerle aynı API'leri kullanır ve aynı yapıya sahiptir.
Bildirimler kol saatinde iki şekilde görünebilir:
- Mobil uygulama bir bildirim oluşturur ve sistem bu bildirimi otomatik olarak kol saatine aktarır.
- Giyilebilir cihaz uygulaması bildirim oluşturur.
Her iki senaryoda da bildirim oluşturmak için NotificationCompat.Builder
sınıfını kullanın. Bildirimleri oluşturucu sınıfıyla oluşturduğunuzda sistem, bildirimlerin düzgün şekilde gösterilmesini sağlar. Örneğin, mobil uygulamanızdan bildirim gönderdiğinizde her bildirim, bildirim akışında kart olarak görünür.
Bildirimlerin nasıl görüntülendiğini görmek için aşağıdaki örneği inceleyin.
1.şekil Aynı bildirim hem telefonda hem de kol saatinde gösteriliyor.
En iyi sonuçları elde etmek için NotificationCompat.Style
alt sınıflarından birini kullanın.
Not:
RemoteViews
kullanıldığında bildirimlerdeki özel düzenler kaldırılır ve giyilebilir cihazda yalnızca metin ile simgeler gösterilir.
Giyilebilir cihazlar için önerilen bildirimler
Giyilebilir cihaz kullanıcılarıyla etkileşim kurmak için harika bir yol olduğundan tüm bildirimler için başlangıç noktası olarak genişletilebilir bildirimleri kullanın. Daraltılmış durum, bildirim tepsisinde kısa ve kolayca görülebilen bir deneyim sunar. Kullanıcı bu bildirime dokunduğunda bildirim genişler ve ek içerik ile işlemlere dair kaydırılabilir, etkileyici bir deneyim sunar.
NotificationCompat.Style
alt sınıflarından herhangi birini kullanarak mobil cihazlarda yaptığınız gibi genişletilebilir bildirim oluşturabilirsiniz. Örneğin, NotificationCompat.MessagingStyle
kullanılarak oluşturulan standart bir bildirim şu şekilde görünür:
Şekil 2. Wear OS'teki MessagingStyle
bildirimi örneği.
Bildirimin genişletilmiş durumunun alt kısmında birden fazla işlem olduğunu görebilirsiniz.
NotificationCompat.BigPictureStyle
, NotificationCompat.BigTextStyle
, NotificationCompat.InboxStyle
ve NotificationCompat.MessagingStyle
örnekleri için GitHub'daki Bildirim örneği'ne göz atın.
İpucu: Bildirimlerinizde, mesajlaşma uygulaması gibi bir uygulama için "yanıtla" işlemi varsa bildirimin davranışını iyileştirebilirsiniz. Örneğin, sesle yazma özelliğini etkinleştirebilir, doğrudan giyilebilir cihazdan yanıt verebilir veya setChoices()
ile önceden tanımlanmış metin yanıtlarını kullanabilirsiniz.
Daha fazla bilgi için Yanıtla düğmesini ekleme başlıklı makaleyi inceleyin.
Yinelenen bildirimleri önleme
Varsayılan olarak, bildirimler tamamlayıcı telefon uygulamasından eşlenmiş tüm kol saatlerine aktarılır. Akıllı giyilebilir cihaz uygulamanız yüklü değilse bu seçenekten yararlanabilirsiniz.
Ancak bağımsız bir kol saati uygulaması ve tamamlayıcı bir telefon uygulaması oluşturursanız uygulamalar yinelenen bildirimler oluşturur.
Wear OS, köprüleme API'leri ile yinelenen bildirimleri durdurma olanağı sunar. Bu durum, Wear OS 5 veya sonraki sürümlerin yüklü olduğu cihazlardaki uygulamalar için özellikle önemlidir. Çünkü mobil cihazda kapatılabilen bazı bildirimler Wear OS cihazda kapatılamaz. Daha fazla bilgi için Bildirimler için köprü oluşturma seçenekleri başlıklı makaleyi inceleyin.
Bildirime giyilebilir cihaza özel özellikler ekleme
Bildirime giyilebilir cihaza özel özellikler eklemeniz gerekiyorsa (ör. uygulama simgesini giyilebilir cihaz bildiriminden gizleme veya kullanıcıların ses girişiyle metin yanıtı dikte etmesine izin verme) seçenekleri belirtmek için NotificationCompat.WearableExtender
sınıfını kullanabilirsiniz.
Bu API'yi kullanmak için aşağıdakileri yapın:
-
WearableExtender
öğesinin bir örneğini oluşturun ve bildirim için giyilebilir cihaza özel seçenekleri ayarlayın. -
NotificationCompat.Builder
örneği oluşturun ve bu kılavuzun önceki bölümlerinde açıklandığı gibi bildiriminize yönelik istediğiniz özellikleri ayarlayın. -
Bildirimde Call
extend()
işlevini çağırın veWearableExtender
değerini iletin. Bu işlem, giyilebilir cihaz seçeneklerini bildirime uygular. -
Bildirimi oluşturmak için Call
build()
işlevini kullanın.
Not:
Çerçevenin NotificationManager
özelliğini kullanıyorsanız
NotificationCompat.WearableExtender
'deki bazı özellikler çalışmaz. Bu nedenle
NotificationCompat
kullanmanız gerekir.
Kullanıcının cihazlarında bildirimlerin kapatılmasını veya iptalini senkronize edebilirsiniz. Bir kapatmayı senkronize etmek için
setDismissalId()
yöntemini kullanın. Her bildirim için setDismissalId()
işlevini çağırırken genel olarak benzersiz bir kimliği dize olarak iletin. Bildirim kapatıldığında, aynı kapatma kimliğine sahip diğer tüm bildirimler hem kol saatinde hem de eşlik eden telefonda kapatılır. Reddetme kimliğini almak için
getDismissalId()
değerini kullanın.
Yalnızca giyilebilir cihazlarda kullanılabilen işlemleri belirtme
Saat ve telefonda farklı işlemlerin kullanılabilmesini istiyorsanız
WearableExtender.addAction()
simgesini kullanın. Bu yöntemle bir işlem eklediğinizde, giyilebilir cihaz
NotificationCompat.Builder.addAction()
ile eklenen diğer işlemleri göstermez. WearableExtender.addAction()
ile eklenen işlemler yalnızca giyilebilir cihazda görünür, telefonda görünmez.
Telefon uygulamanızı bir giyilebilir cihazdan başlatma
Köprülenmiş bildirimleri kullanıyorsanız her bildirimde, telefonda uygulamayı başlatmak için bir düğme bulunur. Ancak saatte oluşturulan yerel bir bildirim kullanıyorsanız telefonda uygulamayı başlatan bir düğme oluşturmak için aşağıdaki adımları uygulayın:
ConfirmationActivity
'ı genişleten yeni birActivity
oluşturun.- Telefon uygulamasını başlatmak için yeni
Activity
'deRemoteActivityHelper
simgesini kullanın. - Bildirimden
Activity
başlatmak içinIntent
oluştururkenEXTRA_ANIMATION_TYPE
ekstrasınıOPEN_ON_PHONE_ANIMATION
olarak ayarlayın.
Not: Bildirim işleminin hedefi olarak BroadcastReceiver
kullanamazsınız.