Uygulamanızın, kullanıcı girişine hızlı yanıt veren ve gerekirse yavaş başlatmayı telafi eden etkileşimli bir kullanıcı arayüzü sunduğundan emin olun. Uygulamanızın, diller arasındaki farklılıkları da hesaba katarak kolayca yerelleştirilecek şekilde tasarlandığından emin olun: Boşluk, yoğunluk, sıralama, vurgu ve ifade varyasyonlarına izin verin. Ayrıca tarih, saat ve diğer birimlerin uluslararası hale getirildiğinden ve telefonun ayarlarına göre görüntülendiğinden emin olun.
Hızlı ve duyarlı kullanıcı arayüzü
Kullanıcının uygulama performansıyla ilgili algısı büyük ölçüde uygulamanın yanıt verme hızına bağlıdır. Örneğin, kullanıcıyla etkileşim ve net bir ekran, yüksek performanslı bir uygulamanın iki önemli özelliğidir. Uygulamaların hızı ve yanıt verme hızının yanı sıra bunları optimize etmeyle ilgili ipuçlarını burada bulabilirsiniz.
Dokunulabilir tüm öğelerde geri bildirime dokunun
- Dokunma geri bildirimi, kullanıcı arayüzüne dokunma hissi katar. Algılanan uygulama gecikmesini mümkün olduğunca azaltmak için uygulamanızın dokunulabilir tüm öğelerde dokunma geri bildirimi sağladığından emin olmalısınız.
- Duyarlı etkileşim, kullanıcı girişine zamanında, mantıklı ve eğlenceli ekran tepkileri oluşturarak uygulamanın daha ayrıntılı şekilde keşfedilmesini sağlar. Duyarlı etkileşim, bir uygulamayı bilgi sunma hizmetinden, birden fazla görsel ve dokunsal yanıt kullanarak iletişim kuran bir deneyime taşır.
- Daha fazla bilgi için Dokunmatik Geri Bildirimi Özelleştirme hakkında Android eğitimine bakın.
Kullanıcı arayüzü her zaman etkileşimli olmalıdır
- Arka planda etkinlik gerçekleştirirken yanıt vermeyen uygulamalar yavaş hisseder ve kullanıcı memnuniyetini azaltır. Arka plan etkinliği ne olursa olsun uygulamanızın her zaman duyarlı bir kullanıcı arayüzüne sahip olduğundan emin olun. Bunu, arka plan iş parçacığında ağ işlemleri veya ağır işlemler gerçekleştirerek yapabilirsiniz. Kullanıcı arayüzü iş parçacığını mümkün olduğunca boşta tutun.
- Materyal Tasarım uygulamaları, her işlemi tek bir etkinlik göstergesiyle temsil ederek içerik yüklerken minimum görsel değişiklik kullanır. Yükleme göstergeleri olan iletişim kutularını engellemekten kaçının.
- Bir görünümde gösterilecek içerik olmadığında boş durumlar oluşur. Öğe içermeyen bir liste veya sonuç döndürmeyen bir arama olabilir. Başlangıç, eğitici veya en iyi eşleşme içeriklerini kullanarak boş durumlardan kaçının. Bu seçenekler geçerli olmadığında, kullanıcıya gösterilecek bir şey olduğunda ne göreceğini belirten etkileşimli olmayan bir resim ve kısa açıklama gösterilir.
- Daha fazla bilgi için Uygulamanızı Duyarlı Tutma ile ilgili Android eğitimine bakın.
Düşük maliyetli cihazlarda saniyede 60 kare hedefleyin
- Uygulamanızın düşük maliyetli cihazlarda bile her zaman hızlı ve sorunsuz çalıştığından emin olun.
- Fazla çizim, uygulamanızı önemli ölçüde yavaşlatabilir. Bu durum, pikseller geçiş başına birden fazla kez çizildiğinde meydana gelir. Bunun bir örneği, üzerinde bir düğme bulunan resmin olmasıdır. Biraz fazla çizim kaçınılmaz olsa da, sorunsuz bir kare hızı için bunların en aza indirilmesi gerekir. Uygulamanızın simge durumuna küçültüldüğünden emin olmak için GPU fazla çiziminde hata ayıklama işlemi gerçekleştirin.
- Android cihazlar, ekranı saniyede 60 kare (fps) hızında yeniler. Bu, uygulamanızın ekranı yaklaşık 16 milisaniye içinde güncellemesi gerektiği anlamına gelir. Uygulamanızın bu 16 ms. ortalamasını karşılayıp karşılamadığını ve ne zaman karşılanmadığını görmek için cihaz üzerindeki araçları kullanarak uygulamanızın profilini çıkarın.
- Düşük maliyetli cihazlarda animasyonları azaltıp kaldırarak cihazın CPU ve GPU yükünü azaltın. Daha fazla bilgi için Düzen performansını iyileştirme konusuna bakın.
- Verimli bir görünüm hiyerarşisi, uygulamanızın bellek ayak izini artırmadan uygulamanızı hızlandırabilir. Daha fazla bilgi için Performans ve Görünüm Hiyerarşilerini inceleyin.
Yavaş başlatılan uygulamaları başlatma ekranı kullanma
- Başlatma ekranı, kullanıcının uygulamanızda gördüğü ilk deneyimdir. Uygulamanızı başlatırken boş bir tuval görüntülemek, yükleme süresi algısını artırır. Bu nedenle, algılanan yükleme süresini kısaltmak için yer tutucu kullanıcı arayüzü veya markalı lansman ekranı kullanabilirsiniz.
- Yer tutucu kullanıcı arayüzü, hem uygulama lansmanları hem de uygulama içi etkinlik geçişleri için en sorunsuz başlatma geçişidir.
- Markalı lansman ekranları, kullanıcıların markayla ilgili anında gösterilmesine olanak tanıyarak kullanıcı arayüzünün içeriğe odaklanmasını sağlar.
- Düşük başlangıç hızlarıyla başa çıkmanın en iyi yolu, bu tür yazılımlara sahip olmak değildir. Lansman Zamanı Performansı, uygulamanızın lansman süresini hızlandırmanıza yardımcı olabilecek bilgiler sağlar.
Kullanıcı arayüzüyle ilgili en iyi uygulamalar
- Materyal Tasarım, iyi bir tasarımın klasik ilkelerini teknoloji ve bilimin sunduğu yenilikler ve olanaklarla bir araya getiren bir görsel dildir. Materyal Tasarım, platformlar ve cihaz boyutlarında birleşik bir deneyime olanak tanıyan tek bir temel sistem sağlar. Kullanıcıların uygulamanızı nasıl kullanacağını sezgisel olarak anlaması için temel Materyal Tasarım bileşenlerini kullanmayı düşünün.
- Kullanıma hazır Materyal Tasarım bileşenleri, Materyal Tasarım Destek kitaplığında mevcuttur. Bu bileşenler, Android 2.1 (API düzeyi 7) ve sonraki sürümlerde desteklenir.
Yerelleştirme
- Kullanıcılarınız dünyanın herhangi bir yerinden olabilir ve ana dilleri sizin dilinizde olmayabilir. Uygulamanızı kullanıcılarınızın okuyabileceği bir dilde sunmazsanız bu fırsatı kaçırırsınız. Bu nedenle, uygulamanızı başlıca bölgesel diller için yerelleştirmeniz gerekir.
- Daha fazla bilgi edinmek için Farklı Dilleri Destekleme ile ilgili Android eğitimini ziyaret edin ve yerelleştirme kontrol listesine bakın.
- Android 7.0'dan (API düzeyi 24) itibaren Android çerçevesi, uygulamanızı birden fazla dilde yerelleştirmenize yardımcı olabilecek ICU4J API'lerinin bir alt kümesini kullanıma sunar. Daha fazla bilgi için ICU4J Android Framework API'leri sayfasına bakın.
Ek kaynaklar
Bu konu hakkında daha fazla bilgi edinmek için aşağıdaki ek kaynakları inceleyin: