Android 12 (API düzeyi 31), platform ve başlatıcılardaki kullanıcı ve geliştirici deneyimini iyileştirmek için mevcut Widget API'sini yeniledi. Widget'ınızın Android 12 ile uyumlu olmasını nasıl sağlayacağınızı öğrenmek için bu kılavuzu kullanın. Ayrıca, mevcut widget'ınızı yenilemek için API'lere referans olarak da bu kılavuzdan yararlanabilirsiniz.
Widget'ınızın Android 12 ile uyumlu olduğundan emin olun
Android 12'deki widget'ların köşeleri yuvarlatılmıştır. Android 12 veya sonraki sürümleri çalıştıran bir cihazda uygulama widget'ı kullanıldığında başlatıcı, widget'ın arka planını otomatik olarak tanımlar ve köşeleri yuvarlatacak şekilde kırpar.
Bu senaryoda widget'ınız aşağıdaki koşullardan birinde düzgün şekilde görüntülenmeyebilir:
Widget'ın köşelerinde içerik var: Bu durum, köşe alanındaki bazı içeriklerin kırpılmasına neden olabilir.
Widget, kırpmaya uygun olmayan bir arka plan kullanıyor. Şeffaf arka planlar, boş görünümler veya düzenler ya da kırpılmaya uygun olmayan diğer özel arka planlar buna dahildir. Sistem, kullanılacak arka planı doğru şekilde tanımlayamayabilir.
Widget'ınız bu değişiklikten etkilenecekse düzgün şekilde gösterildiğinden emin olmak için köşeleri yuvarlatılmış şekilde yenilemenizi öneririz (aşağıdaki bölümde açıklandığı şekilde).
Örneği kullanma
Bu API'lerin tümünü çalışırken görmek için örnek liste widget'ımıza göz atın.
Yuvarlatılmış köşeler uygulama
Android 12, widget'ınızın yuvarlatılmış köşelerinin yarıçapını ayarlamak için system_app_widget_background_radius
ve system_app_widget_inner_radius
sistem parametrelerini kullanıma sunar.
1 Widget'ın köşesi.
2 Widget'ın içindeki bir görünümün köşesi.
Ayrıntılar için Yuvarlatılmış köşeler uygulama başlıklı makaleyi inceleyin.
Cihaz teması ekleme
Android 12'den itibaren widget'lar, düğmeler, arka planlar ve açık ve koyu temalar da dahil olmak üzere diğer bileşenler için cihaz teması renklerini kullanabilir. Bu sayede farklı widget'lar arasında daha sorunsuz geçişler ve tutarlılık sağlanır.
Daha fazla bilgi için Cihaz teması ekleme başlıklı makaleyi inceleyin.
Widget'ları özelleştirmeyi kolaylaştırma
appwidget-provider
öğesinin configure
özelliğiyle bir yapılandırma etkinliği belirtirseniz Uygulama Widget'ı ana makinesi, kullanıcının widget'ı ana ekranına eklemesinden hemen sonra bu etkinliği başlatır.
Android 12, kullanıcılara daha iyi bir yapılandırma deneyimi sunmanıza olanak tanıyan yeni seçenekler ekler. Ayrıntılar için Kullanıcıların widget'ları yapılandırmasını etkinleştirme başlıklı makaleyi inceleyin.
Yeni birleşik düğmeler ekleme
Android 12, aşağıdaki mevcut bileşenleri kullanarak durum bilgisine sahip davranış için yeni destek ekler:
Widget hâlâ durum bilgisine sahip değil. Uygulamanız durumu depolamalı ve durum değişikliği etkinliklerine kaydolmalıdır.
Ayrıntılar için Durum bilgisine sahip davranış desteği başlıklı makaleyi inceleyin.
Widget boyutları ve düzenleri için geliştirilmiş API'leri kullanma
Android 12'den itibaren, ek widget boyutlandırma kısıtlamaları belirterek ve duyarlı ve tam sayfa düzenler sağlayarak daha hassas boyut özelliklerinden ve daha esnek düzenlerden yararlanabilirsiniz.
Ayrıntılar için Esnek widget düzenleri sağlama başlıklı makaleyi inceleyin.
Uygulamanızın widget seçici deneyimini iyileştirme
Android 12, dinamik widget önizlemeleri ve widget açıklamaları ekleyerek uygulamanızdaki widget seçici deneyimini iyileştirmenize olanak tanır. Ayrıntılar için Widget seçiciye ölçeklenebilir widget önizlemeleri ekleme ve Widget'ınız için açıklama ekleme başlıklı makalelere göz atın.
Daha akıcı geçişler yapma
Android 12'den itibaren başlatıcılar, kullanıcılar uygulamanızı widget'tan başlattığında daha sorunsuz bir geçiş sağlar. Ayrıntılar için Daha sorunsuz geçişler etkinleştirme başlıklı makaleyi inceleyin.
Basitleştirilmiş RemoteViews
koleksiyonlarını kullanma
Android 12, ListView
doldururken uygulamanızın doğrudan bir koleksiyonu iletmesine olanak tanıyan setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items)
yöntemini ekler. Önceden, ListView
kullanırken RemoteViewsFactory
döndürmek için bir RemoteViewsService
uygulamak ve beyan etmek gerekiyordu.
Ayrıntılı bilgi için RemoteViews
koleksiyonlarını kullanma başlıklı makaleyi inceleyin.
RemoteViews
için çalışma zamanı değişikliğini kullanma
Android 12, RemoteViews
özelliklerinin çalışma zamanında değiştirilmesine olanak tanıyan çeşitli RemoteViews
yöntemleri ekler. Eklenen yöntemlerin tam listesi için RemoteViews
API referansına bakın.
Ayrıntılar için RemoteViews
'un çalışma zamanındaki değişikliğini kullanma başlıklı makaleyi inceleyin.