Kişiler ve görüşmeler

Kişiler ve görüşmeler girişimi, telefonun sistem yüzeylerinde kişileri ve görüşmeleri öne çıkarmayı amaçlayan çok yıllık bir Android girişimidir. Bu öncelik, diğer kullanıcılarla iletişim ve etkileşimin tüm demografilerdeki kullanıcılarımızın çoğunluğu için hâlâ en değerli ve önemli işlevsel alan olmasından kaynaklanmaktadır.

Android 11'de kişiler ve görüşmeler girişimini desteklemek için bir dizi özellik kullanıma sunuldu.

Görüşme alanı


Görüşme alanı, gerçek zamanlı insan görüşmelerine özel bir bildirim alanıdır.
Şekil 1: Görüşmeler alanı.

El cihazlarında, bildirim gölgesinin üst kısmında yalnızca kişilerle yaptığınız gerçek zamanlı görüşmeleri (ör. grup sohbetleri dahil olmak üzere aramalar ve sohbet mesajları) içeren ayrı bir bölüm bulunur. Bu alandaki bildirimler, birçok telefondaki sohbet dışı bildirimlerden farklı görünür ve çalışır:

  • Tasarımda, kullanıcıları temsil eden avatara ve sohbeti yürüten uygulamaya büyük önem verilir.
  • Bildirime dokunduğunuzda sohbet uygulamada açılır (veya sohbet daha önce baloncuk şeklindeyse baloncuk açılır). Ok işaretine dokunduğunuzda ise gölgedeki yeni mesajlar, seçeneklerin tam listesiyle birlikte tam uzunlukta genişletilir.
  • Sohbete özel işlemler sunulur (bazıları uzun basılarak):
    • Bu ileti dizisini öncelikli olarak işaretleme
    • Bu görüşmeyi baloncuk olarak göster (yalnızca uygulama baloncukları destekliyorsa gösterilir)
    • Bu görüşmeyle ilgili bildirimleri sessize alma
    • Bu görüşme için özel sesler veya titreşimler ayarlama

Baloncuklardaki görüşmeler

Bir bildirim, sohbet koşullarını karşılıyorsa platform, bildirimi bildirim çekmecesinden baloncuk olarak başlatır.
Şekil 2: Bildirim, bildirim çekmecesinden balon olarak başlatılıyor.

Android 11'den itibaren Bubbles, İleti dizileri bölümündeki bildirimlerden başlatılabilir. Yalnızca ilişkili bir kısayolu olan bildirimler baloncuk olarak gösterilebilir. Önemli olarak işaretlenen veya bildirim gölgesinde baloncuk olarak gösterilmesi tetiklenen ileti dizileri otomatik olarak baloncuk olarak gösterilir.

İleti dizisi kısayolları

Görüşmelerin kısayolları, başlatıcıda ve paylaşma sayfasındaki uzun ömürlü paylaşım kısayollarının yanında görünür.

API yönergeleri

Bu bölümde, kullanıcıları ve görüşmeleri gösteren sistem tarafından sağlanan alan için uygulamanıza destek eklemek üzere kullanılacak API'ler açıklanmaktadır.

Görüşmeler için kısayollar

Bu görüşme odaklı girişime katılmak için uygulamaların sisteme uzun ömürlü kısayollar sağlaması gerekir. Uzun ömürlü paylaşım kısayolları kullanmanızı önemle tavsiye ederiz. Gerekirse Android 11'de dinamik kısayolları kullanabilirsiniz ancak bu seçeneği ileride kaldırabiliriz.

Görüşmeye kısayol yayınlamak için ShortcutManagerCompat yöntemlerinden setDynamicShortcuts(), addDynamicShortcuts() veya pushDynamicShortcut() (geliştirici için kısayol sınırını otomatik olarak yönetir) yöntemini çağırın. Bu kısayol uzun ömürlü olmalı ve bir veya daha fazla kişi için sohbetteki diğer katılımcıları tanımlayan Person verileri eklenmelidir. Ayrıca LocusIdCompat ayarını da yapmanızı öneririz.

Uygulama, artık mevcut olmayan bir görüşmenin kısayolunu removeLongLivedShortcuts() ile silebilir. Bu işlem, sistemin görüşmeyle ilişkili tüm verileri silmesine neden olur. Kısayollar kaldırılabilir olsa da uygulamalar, kesinlikle gerekli olmadığı sürece önbelleğe alınan kısayolları kaldırmamalıdır. Bir kısayol, kullanıcı deneyimini değiştirmek için kullanıcının onunla etkileşime geçtiği için önbelleğe alınmış olabilir. Kısayolun kaldırılması bu değişiklikleri geri alır ve kullanıcının canını sıkar.

Görüşme Bildirimleri

Aşağıdaki koşullar geçerliyse bildirim, ileti dizisi bildirimi olarak kabul edilir:

  • Bildirimde MessagingStyle kullanılıyor.

  • (Yalnızca uygulama Android 11 veya sonraki sürümleri hedefliyorsa) Bildirim, geçerli bir uzun ömürlü dinamik veya önbelleğe alınmış paylaşım kısayoluyla ilişkilendirilmiş olmalıdır. Bildirim, setShortcutId() veya setShortcutInfo() çağrısını yaparak bu ilişkilendirmeyi ayarlayabilir. Uygulama Android 10 veya önceki sürümleri hedefliyorsa bildirimin, yedek seçenekler bölümünde açıklandığı gibi bir kısayolla ilişkilendirilmesi gerekmez.

  • Kullanıcı, yayın sırasında bildirim kanalı ayarları üzerinden ileti dizisini ileti dizisi bölümünden çıkarmamıştır.

LocusIdCompat'i kullanma

Cihaz üzerinde zeka, kullanıcının ilgilenme olasılığı en yüksek olan sohbetleri belirler. En önemli sinyaller arasında her görüşmedeki görüşme oturumlarının yakınlığı ve sıklığı yer alır. Sistem, Launcher kısayollarından veya düzgün şekilde etiketlenmiş bir bildirimdeki bir görüşmeyle ilgili etkileşimleri bilir. Ancak bu etkileşimler etiketlenmediği sürece sistem, tamamen uygulamada gerçekleşen görüşmeler hakkında bilgi sahibi olmaz. Bu nedenle, kısayyola bir LocusIdCompat eklemenizi ve uygulama içi etkinliği veya parçayı ilişkili LocusIdCompat ile notlandırmanızı önemle tavsiye ederiz. Öneri sisteminin sohbeti doğru şekilde sıralamasını ve sistemin, kullanıcının bir sohbetle son etkileşiminin (uygulama içi etkileşimler dahil) doğru zamanını göstermesini sağlamak için LocusIdCompat değerini kullanın. Görüşmeyi kısayolla ilişkilendirmek için setShortcutInfo() kullanırsanız görüşmeler sistemi uygun LocusIdCompat'ı otomatik olarak ekler.

Android 10 veya önceki sürümleri hedefleyen uygulamalar için görüşme alanı gereksinimleri

Android 11'i hedeflemeyen bir uygulamanın mesajları, görüşme alanında gösterilmeye devam edebilir. Ancak uygulamanın belirli koşulları karşılaması gerekir. Bu bölümde, bu uygulamalar için gerekenler ve uygulamanın şartları karşılamaması durumunda yedek davranış açıklanmaktadır.

Mesajlaşma alanına katılım için temel şart, uygulamanın MessagingStyle bildirimleri uygulamak zorunda olması ve bildirimlerin, yayınlandığı sırada bildirimdeki uzun ömürlü bir kısayola referans vermesidir. Bu koşulları karşılayan bildirimler, görüşme alanında şu şekilde görünür:

  • Bildirim ileti dizisi biçiminde gösterilir.
  • Uygulanmışsa Bubble düğmesi sunulur
  • Sohbete özgü işlevler satır içi olarak sunulur.

Bildirim bu koşulları karşılamıyorsa platform, bildirimi biçimlendirmek için yedek seçenekleri kullanır. Bir bildirim, bu yedek durumların koşullarını karşılıyorsa görüşme alanında özel biçimlendirmeyle gösterilir. Bildirim, yedek seçeneklerden hiçbirine uygun değilse sohbet alanında gösterilmez.

Yedek: MessagingStyle kullanılıyor ancak kısayol sağlanmıyorsa

Uygulama Android 10 veya önceki sürümleri hedefliyorsa ve bir bildirim MessagingStyle kullanıyorsa ancak mesajı bir kısayolla ilişkilendirmiyorsa bildirim, görüşme alanında şu davranışla gösterilir:

  • Bildirim ileti dizisi biçiminde gösterilir.
  • Kabarcık düğmesi sunulmuyor
  • Satır içi görüşmeye özgü işlevler sunulmaz.

Yedek: MessagingStyle kullanılmıyorsa ancak uygulama tanınan bir mesajlaşma uygulamasıysa

Bir bildirimde MessagingStyle kullanılmasa da uygulama platform tarafından mesajlaşma uygulaması olarak tanınıyorsa ve bildirimin category parametresi msg olarak ayarlanmışsa bildirim, sohbet alanında şu davranışla gösterilir:

  • Bildirim, Android 11 öncesi eski tarzda gösterilir.
  • Kabarcık düğmesi sunulmuyor
  • Satır içi görüşmeye özgü işlevler sunulmaz.

Rehberlik, kullanım ve test

Bu bölümde, sohbet özelliklerinin nasıl kullanılacağı ve test edileceğiyle ilgili genel bilgiler verilmektedir.

Sohbetleri ne zaman kullanmalıyım?

İleti dizisi bildirimleri ve ilgili kısayollar, gerçek zamanlı sohbetlerin kullanıcı deneyimini iyileştirmeyi amaçlar. Örneğin, SMS, kısa mesaj sohbetleri ve telefon görüşmeleri, kullanıcıların hızlı bir şekilde iletişim kurmasını beklediği gerçek zamanlı görüşmelerdir. Kullanıcılar, mesaj dizileriyle alakalı olmayan e-posta ve etkinliklerde bu beklentiye sahip değildir.

Kullanıcılara, belirli bir görüşmenin doğru alanda olmadığını düşündüklerinde görüşme bölümünü kaldırma olanağı sunduk.

En iyi uygulamalar

Etkileşimi artırmak ve kullanıcılarınızın uygulamanızla ilgili kişilerle ve sohbetlerle etkileşim kurmasını kolaylaştırmak için aşağıdaki en iyi uygulamaları kullanmanızı öneririz.

  • Cevapsız aramaların öncelikli ileti dizisi gölgesinde gösterilmesini ve dönüşüm widget'ında doğru şekilde görünmesini sağlamak için cevapsız arama bildirimlerini CATEGORY_MISSED_CALL olarak ayarlanmış bir kategoriyle conversations olarak biçimlendirin.
  • Kullanıcılar için yüksek kaliteli avatarlar (104 dp) sağlayın. Aksi takdirde sistem, kullanıcının baş harflerini kullanır. Bu da daha az ilgi çekici bir deneyimdir.
  • Kullanıcı mesajı görmeden önce sohbet bildirimi cancel göndermeyin. Buna örnek olarak, uygulama kullanıcının iletiyi göremediği veya iletiyi ele alamadığı bir görünümde açıldığında bildirimin iptal edilmesi verilebilir. Kullanıcıya mesajı okuma veya yanıtlama fırsatı verilmezse iptal edilen bildirim ve ilişkili balon kaldırılır. Bu da görüşme bağlamının kaybedilmesine neden olur.
  • Mesajlarla ilişkili MIME ile ilgili meta veriler için bir data URI sağlayın. Bu, bildirimler için daha zengin bir deneyim sunma seçeneği sunar.
  • Görüşme widget'larını daha ilgi çekici hale getirmek için Android 12 status API'sini kullanın.
  • Görüşme kısayolları için aşağıdaki en iyi uygulamaları uygulayın.
    • Gelen ve giden uygulama içi görüşmeler için push bildirimi göndermeyen kısayollar yayınlayın. Aynı ileti dizisindeki gelen ve giden iletiler aynı kısayol kimliğine sahip olmalıdır. Kısayollarınızı yayınlamak ve kullanım raporlarını görüntülemek için pushDynamicShortcut() simgesini kullanın.
    • Kısayol avatarınızın istenmeden kırpılmasını önlemek için kısayolun simgesi için bir AdaptiveIconDrawable sağlayın. Daha fazla bilgi için Kısayol görüntüleri sağlama başlıklı makaleyi inceleyin.
    • Sistemin kısayolunuzu tanıtmasına yardımcı olmak için en iyi sıralamayı almayla ilgili yönergeleri uygulayın. Paylaşım kısayoluysa Android paylaşım sayfası da dahil olmak üzere farklı sistem yüzeylerinde kısayolunuz sıralanır.
    • İleti dizisi kısayollarının intents doğrudan ilgili ileti dizisini açtığından emin olun.
    • Kısayollarınızı conversation ile ilgili olarak kolayca ayarlamak için uyumluluk kitaplıklarını kullanın.

Görüşme bildirimlerini ve kısayollarını test etme

Bir görüşmeye uzun bastığınızda görüşmeyle ilgili işlemlerin bulunduğu bir menü açılır.
Şekil 3: Bir görüşme bildiriminin doğru yapılandırıldığını doğrulamak için bildirime uzun basıp görüşme menüsünün görünüp görünmediğini kontrol edebilirsiniz.

Görüşme alanı kurallarını uygularsanız görüşmeler otomatik olarak görüşme alanında görünür. Bildirime uzun basarak kısayolun doğru şekilde entegre edildiğini doğrulayabilirsiniz. Entegrasyon doğru şekilde yapılırsa kullanıcı arayüzünde sohbetle ilgili işlemler gösterilir. Bildirim bir kısayola bağlı değilse kullanıcı arayüzünde, uygulamanın görüşme özelliklerini desteklemediğini belirten bir metin gösterilir.

Uygulama başlatıcıya uzun bastığınızda eklenen kısayollar gösterilir. Kısayolların sizi uygulamanızdaki doğru yere götürdüğünü test edin.

Eklenen paylaşım kısayolları, paylaşım kısayolunuzun alabileceği içerikler paylaşılırken paylaşım sayfasının doğrudan paylaşım satırında gösterilir.

İletişim Widget'ları

İletişim widget'larında gösterilen ileti dizileri
Şekil 1: İleti dizisi widget'larında gösterilen ileti dizileri.

Android 12'deki Görüşme Widget'ı özelliği, uygulamaların Görüşme widget'larında görüşme durumunu göstermesine olanak tanıyarak Android 11'de kullanıma sunulan kişiler ve görüşmeler özelliğini temel alır.

Sohbet widget'ları, kullanıcıların ana ekranda sohbetlerini kolayca açmasına olanak tanıyarak kullanıcı etkileşimini artırır. Bu widget'lar, kullanıcıların sohbet durumlarının snippet'lerini veya alakalı diğer bilgileri gösterirken sohbetlerine verimli bir şekilde geri dönmelerine olanak tanıyan gelişmiş kısayollardır.

Uygulamanızın sohbet widget'larını desteklediğini doğrulama

Uygulamanızın sohbet widget'larını desteklediğini doğrulamak için en az iki Android cihaza (her ikisi de Android 12 yüklü) ve mesaj alışverişi yapmak için iki kullanıcı hesabına (her cihazda bir tane) sahip olmanız gerekir. Bu prosedürde, hesapları "kullanıcı A" ve "kullanıcı B" olarak adlandıracağız.

Yeni bir görüşme widget'ı eklemek için widget seçici kullanıcı arayüzü
Şekil 2: Yeni bir ileti dizisi widget'ı eklemek için widget seçici kullanıcı arayüzü.

Aşağıdaki adımları tamamlayın:

  1. A kullanıcısının cihazında başlatıcıya uzun basın. Widget seçicide, Şekil 2'de gösterildiği gibi bir ileti dizisi için yeni bir widget'a dokunun.
  2. Widget'ı ana ekrana sürükleyin. A kullanıcısının uygulamasındaki etkin veya son görüşmelerin listesi seçilebilir olmalıdır.
  3. Ardından B kullanıcısının cihazından A kullanıcısına bir test mesajı gönderin.
  4. A kullanıcısının cihazında, widget'ın B kullanıcısından gelen mesaj bildirimini yansıtacak şekilde güncellendiğini doğrulayın.
  5. İsteğe bağlı: Widget'larının bunları doğru yansıtmasını sağlamak için hem A hem de B kullanıcısının görüşmeyi farklı durum değerlerine ayarlamasını sağlayın. Durum değerlerinin listesi için ConversationStatus konusuna bakın.