Ekran uyumluluğuna genel bakış

Android, farklı ekran boyutlarına ve piksel yoğunluklarına sahip çeşitli cihazlarda çalışır. Sistem, kullanıcı arayüzünüzü farklı ekranlara uyarlamak için temel ölçeklendirme ve yeniden boyutlandırma işlemleri gerçekleştirir. Ancak kullanıcı arayüzünüzün her ekran türüne daha iyi uyum sağlamasına yardımcı olacak yöntemler vardır.

Şekil 1. Android farklı ekranlara ve piksel yoğunluklarına sahip farklı cihazlarda çalışır.

Bu sayfada, uygulamanızın uyum sağlamasına yardımcı olmak için Android'deki özelliklere genel bir bakış sunulmaktadır. Farklı ekran varyasyonları için uygulamanızı oluşturma hakkında daha ayrıntılı talimatlar için aşağıdaki belgelere bakın:

Ekran boyutları

Ekran boyutu, uygulamanızın kullanıcı arayüzü için görünür olan alandır. Uygulamanızın tanıdığı ekran boyutu, cihaz ekranının gerçek boyutu değildir. Uygulamalar, ekran yönünü, gezinme çubuğu gibi sistem süslemelerini ve kullanıcının çoklu pencere modunu etkinleştirmesi gibi pencere yapılandırma değişikliklerini dikkate almalıdır.

Esnek düzenler

Varsayılan olarak Android, uygulama düzeninizi mevcut ekrana sığacak şekilde yeniden boyutlandırır. Düzeninizin, ekran boyutundaki küçük varyasyonlarda iyi bir şekilde yeniden boyutlandırılmasına yardımcı olmak için düzeninizi esnekliği göz önünde bulundurarak uygulayın. Kullanıcı arayüzü bileşenlerinizin konumunu ve boyutunu koda gömmeyin. Bunun yerine, görünüm boyutlarının genişletilmesine ve üst görünüme veya diğer kardeş görünümlere göre görünüm konumlarının belirtilmesine izin verin. Böylece, istediğiniz sıra ve göreli boyutlar düzen büyüdükçe aynı kalır.

Esnek düzenler hakkında daha fazla bilgi edinmek için Duyarlı tasarım başlıklı makaleyi inceleyin.

Alternatif düzenler

Esnek bir düzen önemlidir ancak farklı cihazlardaki mevcut alan için kullanıcı deneyimini optimize eden farklı düzenler tasarlamanız da gerekir. Android, mevcut cihazın ekran boyutuna göre sistemin çalışma zamanında uyguladığı alternatif düzen dosyaları sağlamanıza olanak tanır.

Şekil 2. Aynı uygulama, farklı ekran boyutları için farklı düzenler kullanır.

Alternatif düzenlerin nasıl oluşturulacağını öğrenmek için Uyarlanabilir tasarım konusuna bakın.

Genişletilebilir resimler

Düzeninizin geçerli ekrana sığması için genişletilmesi gerektiğinden, düzen görünümlerinden herhangi birine eklediğiniz bit eşlemler de önemlidir. Bununla birlikte, sıradan bir bit eşlemin rastgele yönlerde esnetilmesi, garip ölçekleme yapılarına ve görüntülerin çarpık olmasına yol açabilir.

Android bu sorunu çözmek için dokuz yamalık bit eşlemlerini destekler. Bu bit eşlemlerde, uzatılabilir küçük piksel bölgeleri belirtirken resmin geri kalanı ölçeklendirilmemiş olarak kalır.

Dokuz yamalı bit eşlemler hakkında daha fazla bilgi edinmek için NinePatch pullables konusuna bakın.

Piksel yoğunlukları

Piksel yoğunluğu, ekranın fiziksel bir alanı içindeki piksel sayısıdır. Bu boyut, dpi (inç başına nokta sayısı) olarak adlandırılır. Bu değer, ekrandaki toplam piksel sayısı olan ekran çözünürlüğünden farklıdır.

Şekil 3. Aynı boyutta olan ancak farklı piksel yoğunluklarına sahip iki cihazı abartılı bir şekilde temsil eder.

Yoğunluk bağımsızlığı

Uygulamanız, Şekil 3'te gösterildiği gibi farklı piksel yoğunluklarına sahip ekranlarda görüntülenirken kullanıcı arayüzü tasarımının fiziksel boyutunu (kullanıcının bakış açısından) koruduğunda"yoğunluktan bağımsız" hale gelir. Yoğunluk bağımsızlığını korumak önemlidir, çünkü bunlar olmadan düğme gibi bir kullanıcı arayüzü öğesi, düşük yoğunluklu ekranda daha büyük, yüksek yoğunluklu ekranda ise daha küçük görünebilir.

Android, piksel (piksel) yerine kullandığınız ölçüm birimi olarak yoğunluktan bağımsız pikseli (dp veya dip) sağlayarak yoğunluktan bağımsızlık elde etmenize yardımcı olur.

Yoğunluktan bağımsız pikseller hakkında daha fazla bilgi edinmek için Yoğunluktan bağımsız pikselleri kullanma bölümüne bakın.

Alternatif bit eşlemler

Resimlerinizin tüm ekranlarda en iyi şekilde görünmesini sağlamak için her ekran yoğunluğuna uygun alternatif bit eşlemler sağlayın. Uygulamanız yalnızca düşük yoğunluklu ekranlar için bit eşlem sağlıyorsa Android, resimlerin ekranda aynı fiziksel alanı kaplaması için yüksek yoğunluklu bir ekranda bu öğeleri ölçeklendirir. Bu, bit eşlemlerde görünür ölçeklendirme yapılarına neden olabilir. Bu nedenle, uygulamanız daha yüksek çözünürlükte alternatif bit eşlemler içermelidir.

Alternatif bit eşlemlerin nasıl sağlanacağını öğrenmek için Alternatif bit eşlemler sağlama bölümüne bakın.

Vektör grafikleri

Simgeler gibi basit resim türlerinde, vektör grafiklerini kullanarak her bir yoğunluk için ayrı resimler oluşturmaktan kaçınabilirsiniz. Vektör grafikler çizimi piksel yerine geometrik çizgi yollarıyla tanımladığından, ölçeklendirme kusurları olmadan herhangi bir boyutta çizilebilir.

Vektör grafiklerini kullanma hakkında daha fazla bilgi edinmek için Vektör grafiklerini tercih etme bölümüne bakın.

Wear OS, TV, Auto ve ChromeOS

Yukarıdaki öneriler tüm Android form faktörleri için geçerlidir. Ancak Wear OS, Android TV, Android Auto veya ChromeOS cihazlar için uygulama oluşturmak istiyorsanız daha fazla çalışmanız gerekir.

Bu cihaz türlerinin her birinin, uygulamanızın uyması gereken kendi kullanıcı etkileşimi modeli vardır. Bazı durumlarda (örneğin, Wear OS için), uygulamanızın kullanıcı deneyimini yeniden düşünüp söz konusu cihaz için özelleştirilmiş bir uygulama oluşturmanız gerekir. Öte yandan, Google Pixelbook gibi ChromeOS cihazları desteklemek için mevcut uygulamanızda klavye veya fare etkileşimini ve daha büyük bir ekranı desteklemek üzere sadece küçük değişiklikler yapmanız gerekebilir.

Bu cihazları desteklemek için aşağıdaki dokümanlara bakın:

Katlanabilir Cihazlar

Katlanabilir cihazlarda genellikle farklı ekranlara (veya ekran kombinasyonlarına) sahip birden çok ekran bulunur. Bunlar, katlanan cihazların farklı durumları için etkin hale gelirler. Uygulamanızın değişen bu yapılandırmalara uyum sağlaması için bu dokümandaki yönergeleri uygulayın. Ancak bazı yapılandırmalar alışılmadık en boy oranlarına sahip olabilir. Bu nedenle uygulamanızın çeşitli cihazlarda nasıl davrandığını test edin.

Şekil 4. Katlama ve açma.

Genellikle, çeşitli pencere boyutları için çoklu pencere modunda iyi çalışan bir uygulama katlanabilir cihazlarda da iyi davranır.

Katlanabilir cihazlar için uygulama oluşturma hakkında daha fazla bilgiyi Katlanabilir cihazlar hakkında bilgi sayfasında bulabilirsiniz.

Ekran uyumsuzluğu

Android çerçevesi ve araçları, uygulamaları tüm ekran yapılandırmalarında kullanıma sunmak için ihtiyacınız olan her şeyi sağlasa da, uyumsuzluk nedeniyle uygulamanızın bazı ekran yapılandırmalarında kullanılmasını istemeyebilirsiniz. Bu durumda, kısıtlanmış ekran desteği beyan edebilirsiniz.