Core uygulama kalitesi

Son güncelleme: 17 Mayıs 2021

Uygulama mükemmelliğini değerlendirmenin faydalı bir yolu, uygulamanızdaki iş akışlarını inceleyip uygulama deneyiminin sorunsuzluğunu ve güvenliğini değerlendirmektir.

Bu yapılacaklar listesi, uygulamanızın kalitesini değerlendirmenize yardımcı olmak için bir dizi temel kalite ölçütü ve ilişkili testleri tanımlar. Bu ölçütlerden bazıları kolayca gözden kaçabilir. Testler, bunları test planlarınıza dahil etmeyi hatırlamanıza yardımcı olur.

Kontrol listesinde, tüm uygulamaların karşılaması gereken minimum kalite vurgulanır. Testiniz büyük olasılıkla burada açıklananların çok ötesine geçecektir.

Kalite kontrol listesindeki her öğenin benzersiz bir kimliği vardır. Bu kimlik, ekibinizle iletişim kurarken işinize yarayabilir. Ayrıca bu yönergelerin önceki sürümünü de görüntüleyebilirsiniz.

Görsel deneyim

Uygulamanız, tutarlı ve sezgisel bir kullanıcı deneyimi için uygun yerlerde standart Android görsel tasarım ve etkileşim kalıpları sağlamalıdır.

Bölge ID Testler Açıklama
Navigasyon VX-N1 CR-3 Uygulama, standart Geri düğmesiyle gezinmeyi destekler ve özel, ekran üzerinde "Geri düğmesi" istemleri kullanmaz.
VX-N2 CR-3 Uygulama, geri gitmek veya ana ekrana gitmek için hareketle gezinmeyi destekler.
VX-N3 CR-1
CR-3
CR-5

Uygulama, kullanıcı veya uygulama durumunu doğru şekilde koruyup geri yüklüyor.

Uygulama, ön plandan ayrılırken kullanıcı veya uygulama durumunu korumanın yanı sıra geri gitme ve diğer durum değişikliklerinden dolayı kazara yaşanan veri kaybını önlüyor.

Uygulama ön plana döndüğünde, saklanan durumu ve bekleyen önemli durum bilgisi içeren işlemleri geri yüklemelidir. Örneğin, düzenlenebilir alanlarda yapılan değişiklikler, oyun ilerleme durumu, menüler, videolar ve uygulama ya da oyunun diğer bölümleri.

  1. Uygulama, Son Uygulamalar uygulama değiştiricisinden devam ettirildiğinde kullanıcıyı son kullanıldığı duruma geri döndürür.
  2. Cihaz uyku (kilitli) durumundan uyandıktan sonra uygulama devam ettirildiğinde kullanıcı, uygulamanın en son kullanıldığı duruma geri döner.
  3. Uygulama, Ana Sayfa veya Tüm Uygulamalar'dan yeniden başlatıldığında, son kullanımdan bu yana geçen süreye bağlı olarak aşağıdakilerden birini yapmalıdır:
    • Uygulama en son kısa süre önce (dakikalar içinde) kullanıldıysa uygulama durumunu, önceki durumuna olabildiğince yakın olacak şekilde geri yükleyin.
    • Uygulama son kullanımdan sonra daha uzun bir süre geçmişse uygulamayı önceki durumuna olabildiğince yakın olacak şekilde geri yüklemeyi deneyin veya uygulamayı ana ekranından ya da başka bir varsayılan durumdan başlatın.
Bildirimler VX-S1 CR-9

Bildirimler, tasarım kurallarına uygundur. Özellikle:

  1. Play Store'da kesinlikle yasaklandığı için bildirimler, çapraz tanıtım veya başka bir ürünün reklamı için kullanılmaz.
  2. Bildirim kanalları, tek bir kanaldan tüm bildirimleri sunmak yerine en iyi uygulamalara göre tanımlanır.
  3. Doğru bildirim önceliğini seçme
  4. Mümkün olduğunda birden fazla bildirim tek bir bildirim grubunda toplanır.
  5. Gerekli durumlarda bildirimler için zaman aşımları ayarlayın.
  6. Bildirimler yalnızca devam eden etkinliklerle (ör. müzik çalma veya telefon görüşmesi) ilgiliyse kalıcı olur. Daha fazla bilgi için İşlevsellik bölümüne bakın.
VX-S2 CR-9

Mesajlaşma uygulamaları, sosyal uygulamalar ve görüşmeler için:

  1. Görüşmeler için MessagingStyle bildirimlerini kullanın.
  2. Doğrudan yanıtlama işlemini destekleyin.
  3. Sohbet kısayollarını destekleyin ve en iyi doğrudan paylaşım sıralamasını elde etmek için en iyi uygulamaları kullanın.
  4. Baloncuklar desteklenir.
Kullanıcı arayüzü ve grafikler VX-U1 CR-5

Uygulama, yatay ve dikey yönleri, ayrıca katlanmış ve açılmış cihaz durumlarını destekler.

Yönler ve katlama durumları, temelde aynı özellikleri ve işlemleri sunar ve işlevsel eşitliği korur.

VX-U2 CR-5

Uygulama, cihazı katlama ve açma gibi yapılandırma değişiklikleri nedeniyle sinemaskop efekti göstermeden her iki yönde de uygulama penceresini dolduruyor.

Ekran geometrisindeki küçük farklılıkları telafi etmek için kullanılan küçük siyah kenarlar kabul edilebilir.

VX-U3 CR-5 Uygulama, ekran yönleri arasındaki hızlı geçişleri ve cihazın katlanıp açılmasını, ekran oluşturma sorunları olmadan ve durumu kaybetmeden doğru şekilde işliyor.
Görsel kalite VX-V1 CR-all

Uygulama, grafik, metin, resim ve diğer kullanıcı arayüzü öğelerini belirgin bozulma, bulanıklık veya piksellenme olmadan gösteriyor.

  1. Uygulama, mümkün olduğunda vektör çizilebilir öğeler kullanmalıdır.
  2. Uygulama, hedeflenen tüm ekran boyutları ve form faktörleri için yüksek kaliteli grafikler sunuyor.
  3. Menülerin, düğmelerin ve diğer kullanıcı arayüzü öğelerinin kenarlarında kenar yumuşatma görünmüyor.
VX-V2 CR-all

Uygulama, desteklenen her dilde metinleri ve metin bloklarını kabul edilebilir bir şekilde gösteriyor.

  1. Kompozisyon, desteklenen tüm form faktörlerinde kabul edilebilir.
  2. Kesilmiş harfler veya kelimeler görünmüyor.
  3. Düğmelerde veya simgelerde uygunsuz kelime sarmaları görünmüyor.
  4. Metin ile çevreleyen öğeler arasında yeterli boşluk var.
VX-V3 CR-all Uygulamanın içeriği ve uygulama tarafından referans verilen tüm web içerikleri koyu temayı destekliyor.
Erişilebilirlik VX-A1 CR-all

Dokunma hedefleri en az 48 dp boyutunda olmalıdır. Daha fazla bilgi edinin.

VX-A2 CR-all

Uygulamanın metni ve ön plan içeriği, arka planıyla yeterince yüksek bir renk kontrastı oranına sahip olmalıdır:

  • Büyük metin / grafik için 3.0:1
  • Küçük metin (18 punto altındaki metinler veya metin kalın ve 14 punto altındaysa) için 4, 5:1

Renk ve kontrast hakkında daha fazla bilgi edinin.

VX-A3 CR-all TextView hariç her kullanıcı arayüzü öğesini contentDescription kullanarak açıklayın.

Uygulama işlevi

Uygulamanız, beklenen işlevsel davranışı uygulamalıdır.

Bölge ID Testler Açıklama
Ses FN-A1 CR-1
CR-8
Uygulama ön plana döndüğünde ses devam ediyor veya oynatmanın duraklatıldığı kullanıcıya bildiriliyor.
FN-A2 CR-1
CR-2
CR-8
Ses oynatma temel bir özellikse uygulama arka planda oynatmayı desteklemelidir.
FN-A3 CR-0

Kullanıcı ses çalmayı başlattığında uygulama bir saniye içinde aşağıdakilerden birini yapmalıdır:

  1. Sesi çalmaya başlayın.
  2. Ses verilerinin hazırlandığını gösteren görsel bir gösterge sağlayın.
FN-A4 CR-0 Uygulama, ses çalınmaya başladığında ses odağı isteğinde bulunmalı ve oynatma durduğunda ses odağını bırakmalıdır.
FN-A5 CR-0 Uygulama, diğer uygulamaların ses odağı isteklerini işlemelidir. Örneğin, başka bir uygulama konuşma sesi çalarken bir uygulama oynatma sesini azaltabilir.
Medya FN-M1 CR-0
CR-6
CR-8
Uygulama arka planda ses oynatıyorsa MediaStyle ile stilize edilmiş bir bildirim oluşturması gerekir.
FN-M2 CR-0 Uygulama video oynatıyorsa pencere içinde pencere oynatmayı desteklemelidir.
FN-M3 CR-0 Uygulama video kodluyorsa bunu HEVC video sıkıştırma standardını kullanarak yapmalıdır.
Paylaşım FN-S1 CR-0 Uygulama, içerik paylaşırken Android Sharesheet'i kullanmalıdır. Özel çözümlerde kullanılamayan hedefler önerebilir.
Arka Plan Hizmeti FN-B1 CR-6 Uygulama, arka planda gereksiz yere uzun hizmetler çalıştırmaktan kaçınıyor. Sistem, kullanıcının cihazının sorunsuz çalışmasını sağlamak için arka plan hizmetleriyle ilgili çeşitli kısıtlamalar uygular. Aşağıdakiler, arka plan hizmetlerinin iyi kullanımları olarak kabul edilmez:
  • Bildirimler için ağ bağlantısını koruma
  • Bluetooth bağlantısını sürdürme
  • GPS'i açık tutma

Çalışmanız için doğru çözümü nasıl seçeceğinizi öğrenin.

Performans ve kararlılık

Uygulamanız, kullanıcıların beklediği performansı, kararlılığı, uyumluluğu ve yanıt verme duyarlılığını sağlamalıdır.

Bölge ID Testler Açıklama
Kararlılık PS-S1 CR-all
SD-1
Uygulama kilitlenmiyor veya ANR ("Android yanıt vermiyor") hatalarına neden olan kullanıcı arayüzü iş parçacığını engellemiyor. Olası kararlılık sorunlarını belirlemek için Google Play'in lansman öncesi raporunu kullanın. Dağıtımdan sonra Google Play Geliştirici Konsolu'ndaki Android Vitals sayfasına dikkat edin.
Performans PS-P1 CR-all
SD-1
Uygulama hızlı yükleniyor veya yüklenmesi iki saniyeden uzun sürüyorsa kullanıcıya ekranda geri bildirim (ilerleme göstergesi veya benzer bir işaret) sağlıyor.
PS-P2 CR-all
SD-1
Uygulamalar, saniyede 60 kare hızına ulaşmak için her 16 ms'de bir kare oluşturmalıdır. Geliştiriciler, test sırasında Profil HWUI oluşturma seçeneğini kullanabilir. Sorun varsa yavaş oluşturma sorununu teşhis etmenize yardımcı olacak araçlar mevcuttur.
PS-P3 PM-1 StrictMode etkinleştirildiğinde (aşağıdaki StrictMode Testi bölümüne bakın) uygulama test edilirken kırmızı yanıp sönmeler (StrictMode'dan gelen performans uyarıları) görünmez. Kırmızı yanıp sönmeler, depolama, ağ erişimi veya bellek sızıntılarıyla ilgili kötü davranışları gösterir.
SDK PS-T1 CR-0 Uygulama, Android platformunun en son herkese açık sürümünde kilitlenmeden veya temel işlevleri ciddi şekilde etkilemeden çalışır.
PS-T2 SP-1 Uygulama, targetSdk değeri ayarlanarak Google Play şartlarına uygun hale getirmek için en yeni Android SDK'sını hedefler.
PS-T3 SP-1 Uygulama, compileSdk değeri ayarlanarak en yeni Android SDK ile oluşturulur.
PS-T4 SP-2
SP-3
Kullanılan tüm Google veya üçüncü taraf SDK'ları güncel olmalıdır. Bu SDK'larda yapılan kararlılık, uygunluk veya güvenlik gibi iyileştirmeler kullanıcılara zamanında sunulmalıdır.

Google SDK'ları için, varsa Google Play Hizmetleri tarafından desteklenen SDK'ları kullanmayı düşünebilirsiniz. Bu SDK'lar geriye dönük olarak uyumludur, otomatik güncellemeler alır, uygulama paketi boyutunuzu küçültür ve cihazdaki kaynakları verimli bir şekilde kullanır.

Geliştirici, kullanılan tüm üçüncü taraf SDK'ları da dahil olmak üzere uygulamanın kod tabanının tamamından sorumludur.

PS-T5 SP-3 Uygulama, SDK olmayan arayüzler kullanmıyor.
PS-T6 SP-2 Üretim uygulamasında hata ayıklama kitaplıkları bulunmuyor. Bu durum, performans ve güvenlik sorunlarına neden olabilir.
Pil PS-B1 BA-1 Uygulama, Android 6.0'da (Doze ve Uygulama Bekletme) kullanıma sunulan güç yönetimi özelliklerini düzgün şekilde destekliyor. Temel işlevin güç yönetimi tarafından kesintiye uğratıldığı durumlarda yalnızca uygun uygulamalar muafiyet isteğinde bulunabilir. Doz ve Uygulamayı Beklemeye Alma bölümündeki Diğer kullanım alanları için destek başlıklı makaleyi inceleyin.

Geliştiriciler, geliştirme sırasında bu ADB komutlarını kullanarak uygulama bekleme ve uyku modunun davranışını test edebilirler.

Geliştiriciler, pil kullanımı açısından beklenmedik pil kullanımını teşhis etmek için planlanmış arka plan çalışmasıyla birlikte Android Studio Power Profiler veya Battery Historian aracını kullanabilir.

Gizlilik ve güvenlik

Uygulamanız, kullanıcı verilerini ve kişisel bilgileri uygun izin düzeyinde güvenli bir şekilde işlemelidir.

Bu kontrol listesine ek olarak, Google Play Store'da yayınlanan uygulamalar, kullanıcıların gizliliğini korumak için Kullanıcı Verileri politikalarına da uymalıdır.

Bölge ID Testler Açıklama
İzinler SC-P1 SC-4 Uygulama, söz konusu kullanım alanını desteklemek için yalnızca kesinlikle gerekli olan minimum sayıda izin istiyor. Konum gibi bazı izinler için mümkünse tam konum yerine yaklaşık konumu kullanın.
SC-P2

Uygulama, hassas verilere (ör. SMS, Arama Kaydı veya konum) ya da ücretli hizmetlere (ör. Çevirici veya SMS) erişim iznini yalnızca uygulamanın temel kullanım alanlarıyla doğrudan ilişkili olduğunda ister. Bu izinlerle ilgili etkiler, kullanıcıya belirgin bir şekilde açıklanmalıdır.

İzinleri nasıl kullandığınıza bağlı olarak, hassas bilgilere erişime güvenmeden uygulamanızın kullanım alanını karşılamanın alternatif bir yolu olabilir. Örneğin, kullanıcının kişileriyle ilgili izin istemek yerine örtülü bir amaç kullanarak erişim isteğinde bulunmak daha uygun olabilir.

SC-P3 CR-0 Uygulama, çalışma zamanında istenen izinleri uygulama başlatılırken değil, işlev istendiğinde bağlam içinde istiyor.
SC-P4 CR-0

Uygulama, belirli izinlerin neden gerekli olduğunu net bir şekilde açıklıyor veya izin isteme nedenini açıklamak için önerilen akışı takip ediyor.

SC-P5 CR-0 Kullanıcılar bir izni reddettiğinde veya iptal ettiğinde uygulama sorunsuz bir şekilde işlevini azaltmalıdır. Uygulama, kullanıcının uygulamaya erişmesini tamamen engellememelidir.
Veriler ve Dosyalar SC-DF1 SC-1 Tüm hassas veriler uygulamanın dahili depolama alanında saklanır.
SC-DF2 SC-10 Sistem günlüğüne veya uygulamaya özel bir günlüğe kişisel veya hassas kullanıcı verileri kaydedilmez.
SC-DF3 Uygulama, tanımlama amacıyla IMEI gibi sıfırlanamayan donanım kimliklerini kullanmıyor.
Kimlik SC-ID1 CR-0 Uygulama, hesap kimlik bilgilerinin ve kredi kartı bilgileri, fiziksel adres ve telefon numarası gibi diğer hassas bilgilerin otomatik doldurulması için ipuçları sağlar.
SC-ID2 CR-0 Geçiş anahtarları, birleştirilmiş kimlik ve geleneksel şifreler için desteği birleştiren sorunsuz bir oturum açma deneyimi için Android için Kimlik Bilgisi Yöneticisi'ni entegre edin.
SC-ID3 CR-0 Uygulama, finansal işlemleri veya önemli kullanıcı belgeleri gibi hassas bilgileri korumak için biyometrik kimlik doğrulamayı destekliyor.
Uygulama Bileşenleri SC-AC1 SC-5

Uygulama, tüm etkinlikler, hizmetler,yayın alıcıları ve özellikle içerik sağlayıcılar için android:exported özelliğini açıkça ayarlar.

Yalnızca diğer uygulamalarla veri paylaşan uygulama bileşenleri veya diğer uygulamalar tarafından çağrılması gereken bileşenler dışa aktarılır.

SC-AC2 CR-0
SC-4

Tüm amaçlar ve yayınlar en iyi uygulamalara uygundur:

  1. Hedef uygulama iyi tanımlanmışsa açık amaçlar kullanın.
  2. İzinleri, izni zaten olan farklı bir uygulamaya ertelemek için Intent'leri kullanın.
  3. Uygulamalar arasında verileri güvenli bir şekilde paylaşın.
  4. Yük içeren amaçlar kullanımdan önce doğrulanır.
  5. Alıcı uygulamanın, arayan uygulamada geri çağırma yapabilmesi ve geri çağırma bekleyebilmesi için başka bir uygulamaya bir amaç iletmeniz gerekiyorsa ekstralara yerleştirilmiş bir amaç eklemeyin. PendingIntent kullanın.
  6. PendingIntent'lerinizi ayarlarken uygun olan yerlerde immutable işaretini açıkça ayarlayın.
SC-AC3 SC-3 Uygulamalarınız arasında içerik paylaşan tüm bileşenler, özel izinler için android:protectionLevel="signature" kullanır. Etkinlikler, hizmetler, yayın alıcılar ve özellikle içerik sağlayıcılar bu kapsamdadır.

Uygulamalar, yüklü paketlerin listesine erişmeye güvenmemelidir. Erişim, Android 11'den itibaren kısıtlanmıştır.

Ağ Ürünleri SC-N1 SC-9 Tüm ağ trafiği SSL üzerinden gönderilir.
SC-N2 SC-6 Uygulama, ağ güvenliği yapılandırması bildiriyor.
SC-N3 Uygulama Google Play Hizmetleri'ni kullanıyorsa güvenlik sağlayıcı, uygulama başlatılırken başlatılır.
WebViews SC-W1 SC-6 Yerel içeriğe erişmek için setAllowUniversalAccessFromFileURLs() işlevini kullanmayın. Bunun yerine WebViewAssetLoader'ı kullanın.
SC-W2 SC-7 Web Görünümleri, güvenilir olmayan içeriklerle addJavaScriptInterface() kullanmamalıdır.

Android 6.0 ve sonraki sürümlerde bunun yerine HTML mesaj kanallarını kullanın.

Uygulama SC-E1 Uygulama, APK'sının dışından kod dinamik olarak yüklemiyor. Geliştiriciler, Play Feature Delivery ve Play Asset Delivery'nin dahil olduğu Android App Bundle'ı kullanmalıdır.

Ağustos 2021'den itibaren Google Play Store'daki tüm yeni uygulamalarda Android App Bundle'ların kullanılması zorunludur.

Kriptografi SC-C1 Uygulama, platform tarafından sağlanan güçlü kriptografik algoritmalar ve rastgele sayı oluşturucu kullanır. Ayrıca, uygulamada özel algoritmalar uygulanmaz.

Google Play

Uygulamalarınızın Google Play'de yayınlanabildiğinden emin olun.

Bölge ID Testler Açıklama
Politikalar GP-P1 GP-all Uygulama, Google Play Geliştirici İçerik Politikası'nın şartlarına sıkı bir şekilde uymalı, uygunsuz içerik sunmamalı, başkalarının fikri mülkiyetini veya markasını kullanmamalıdır.
GP-P2 GP-1 Uygulamanın olgunluk düzeyi, İçerik Derecelendirme Yönergeleri'ne göre uygun şekilde ayarlanır.
Uygulama Ayrıntıları Sayfası GP-D1 GP-1
GP-2

Uygulamanın özellik grafiği, bu destek makalesinde belirtilen yönergelere uygundur. Aşağıdakilerden emin olun:

  1. Uygulama girişinde yüksek kaliteli bir öne çıkan görsel yer alıyor.
  2. Öne çıkan görselde, ölçeği küçültülüp uygulamanızın hedeflediği en küçük ekran boyutunda gösterildiğinde okunamayacak cihaz resimleri, ekran görüntüleri veya küçük metinler yer almıyor.
  3. Özellik grafiği, reklama benzemiyor.
GP-D2 GP-1 Uygulamanın ekran görüntüleri ve videolarında Android olmayan cihazlar gösterilmiyor veya bunlara referans verilmiyor.
GP-D3 GP-1 Uygulamanın ekran görüntüleri veya videoları, uygulamanızın içeriğini ve deneyimini yanlış bir şekilde yansıtmıyor.
Kullanıcı Desteği GP-X1 GP-1 Google Play sayfasının Yorumlar sekmesinde kullanıcılar tarafından bildirilen yaygın hatalar, yeniden üretilebiliyorsa ve birçok farklı cihazda meydana geliyorsa ele alınır. Yalnızca birkaç cihazda hata oluşsa bile bu cihazlar özellikle popüler veya yeni ise hatayı düzeltmeniz gerekir.

Test ortamı oluşturma

Bu yapılacaklar listesi için bir test ortamı oluşturmak amacıyla aşağıdakileri yapmanızı öneririz:

  • Emülatör testine odaklanma: Android Emulator, uygulamanızı farklı Android sürümlerinde ve ekran çözünürlüklerinde test etmenin harika bir yoludur. Hedef kullanıcı tabanınız için en yaygın form faktörlerini ve donanım/yazılım kombinasyonlarını temsil edecek şekilde emüle edilmiş cihazlar (AVD'ler) oluşturmalısınız. Telefonlarda test etmenin yanı sıra, en azından aşağıdaki emülatörleri kullanarak diğer form faktörlerini de test etmenizi öneririz:
    • Katlanabilir cihazlar: Dış ekranlı 7,6 inç içe katlanabilir (AVD Yöneticisi'nde telefonlar altında listelenir).
    • Tablet - Pixel C 9,94 inç (2.560 piksel x 1.800 piksel).
    • Mobil uygulama bildirimi testi için bir mobil cihazı / emülatörü Wear OS emülatörüyle (Wear OS Round 1.84 inç) eşleyin.
  • Donanım cihazlar: Test ortamınız, tüketicilerin kullanımına sunulan temel form faktörlerini ve donanım/yazılım kombinasyonlarını temsil eden az sayıda gerçek donanım cihaz içermelidir. Piyasada bulunan her cihazda test yapmanız gerekmez. Bunun yerine, form faktörü başına bir veya iki cihaz kullanarak temsili cihazlardan oluşan küçük bir gruba odaklanmanız gerekir.
  • Cihaz test laboratuvarları: Uygulamanızı daha çeşitli cihazlarda test etmek için Firebase Test Lab gibi üçüncü taraf hizmetlerini de kullanabilirsiniz.
  • En yeni Android sürümüyle test edin: Hedef kullanıcı tabanınız için temsili Android sürümlerini test etmenin yanı sıra her zaman Android'in en yeni sürümüyle (şu anda Android 14) test yapmanız gerekir. Bu sayede en son davranış değişikliklerinin kullanıcı deneyimini olumsuz etkilememesi sağlanır.

Birim testi, entegrasyon testi ve kullanıcı arayüzü testi gibi testler hakkında daha kapsamlı bilgi edinmek için Android testleriyle ilgili temel bilgiler başlıklı makaleyi inceleyin.

Test prosedürleri

Bu test prosedürleri, uygulamanızdaki çeşitli kalite sorunlarını keşfetmenize yardımcı olur. Testleri birleştirebilir veya test gruplarını kendi test planlarınıza entegre edebilirsiniz. Ölçütleri bu test prosedürleriyle ilişkilendiren referanslar için yukarıdaki bölümlere bakın.

Tür Test Açıklama
Core Suite CR-0

Uygulamanın tüm bölümlerine (tüm ekranlar, iletişim kutuları, ayarlar ve tüm kullanıcı akışları) gidin.

  1. Uygulama, düzenleme veya içerik oluşturma, oyun oynama ya da medya oynatma işlemlerine izin veriyorsa bu akışları test ettiğinizden emin olun.
  2. Uygulamayı test ederken diğer uygulamalardan gelen kesintileri (ör. bildirim veya telefon araması alma) deneyin ve cihaz özelliklerinde geçici değişiklikler (ör. ağ bağlantısı, pil işlevi, GPS kullanılabilirliği ve sistem yükü) uygulayın.
  3. Tüm uygulama içi satın alma akışlarını girin ve test edin
CR-1 Her uygulama ekranında cihazın Ana Sayfa tuşuna basın veya hareketli gezinmede yukarı kaydırın, ardından uygulamayı Tüm Uygulamalar ekranından yeniden başlatın.
CR-2 Her uygulama ekranından, çalışan başka bir uygulamaya geçin ve ardından Son Uygulamalar uygulama değiştiricisini kullanarak test edilen uygulamaya geri dönün.
CR-3 Her uygulama ekranında (ve iletişim kutularında) geri düğmesine basın veya geri kaydırma hareketini kullanın.
CR-5 Her uygulama ekranında cihazı en az üç kez yatay ve dikey yönler arasında, katlanmış ve açılmış durumlar arasında döndürün.
CR-6 Test uygulamasını arka plana göndermek için başka bir uygulamaya geçin. Ayarlar'a gidin ve test uygulamasının arka planda çalışırken herhangi bir hizmeti çalıştırıp çalıştırmadığını kontrol edin. Android 4.0 ve sonraki sürümlerde Uygulamalar ekranına gidip uygulamayı "Çalışıyor" sekmesinde bulun.
CR-7 Cihazı uyku moduna almak için güç düğmesine basın, ardından ekranı uyandırmak için güç düğmesine tekrar basın.
CR-8 Cihazda ekran kilidi ayarlayın. Cihazı uyku moduna geçirmek (kilitlemek) için güç düğmesine basın. Ardından, ekranı uyandırmak ve cihazın kilidini açmak için güç düğmesine tekrar basın.
CR-9 Uygulamanın gösterebileceği tüm bildirim türlerini tetikleyin ve bildirim çekmecesinde gözlemleyin. Gerekirse bildirimleri genişletin (Android 4.1 ve sonraki sürümler) ve kullanılabilir tüm işlemlere dokunun.
CR-10 Doz ve Uygulamayı Beklemeye Alma'daki diğer kullanım alanları için desteği inceleyin.
SD karta yükleme SD-1 Uygulama cihazın SD kartına yüklenmişken Core Suite'i tekrarlayın (uygulama bu yükleme yöntemini destekliyorsa).

Uygulamayı SD karta taşımak için Ayarlar > Uygulama Bilgileri > SD Karta Taşı'yı kullanabilirsiniz.

Performans ve Kararlılık SP-1 Uygulamanın kullanılabilir en son SDK'ya (targetSdk ve compileSdk) göre oluşturulduğundan emin olmak için Android manifest dosyasını ve derleme yapılandırmasını inceleyin.
SP-2 Eski bağımlılıklar için build.gradle dosyasını inceleyin.
SP-3 SDK olmayan arayüz kullanımını tespit etmek için Android Studio lint aracını kullanın. Diğer alternatif test yöntemleri de mevcuttur.
Performans İzleme PM-1 StrictMode profili oluşturma etkin durumunda Core Suite'i tekrarlayın.

Çöp toplama işlemine ve bunun kullanıcı deneyimi üzerindeki etkisine dikkat edin.

Pil BA-1 Doz ve Uygulamayı Beklemeye Alma döngülerinde Core Suite'i tekrarlayın.

Alarmlara, zamanlayıcılara, bildirimlere, senkronizasyonlara vb. dikkat edin. Şartlar ve yönergeler için Doz ve Uygulamayı Beklemeye Alma ile Test Etme başlıklı makaleyi inceleyin.

Güvenlik SC-1 Harici depolama alanında saklanan tüm verileri inceleyin.
SC-2 Harici depolama alanından yüklenen verilerin nasıl işlendiğini ve kullanıldığını inceleyin.
SC-3 Android manifest dosyasında tanımlanan tüm içerik sağlayıcıları inceleyin. Her sağlayıcının uygun bir protectionLevel öğesine sahip olduğundan emin olun.
SC-4 Uygulamanızın gerektirdiği tüm izinleri manifest dosyasında, çalışma zamanında ve cihazdaki uygulama ayarları ekranında (Ayarlar > Uygulama Bilgileri) inceleyin.
SC-5 Android manifest dosyasında tanımlanan tüm uygulama bileşenlerini uygun dışa aktarma durumu için inceleyin. Dışa aktarılan özellik, tüm bileşenler için açıkça ayarlanmalıdır.
SC-6 Uygulamanın ağ güvenliği yapılandırmasını inceleyin ve yapılandırmayla ilgili hiçbir lint kontrolünün başarısız olmadığından emin olun.
SC-7 Her WebView için JavaScript gerektiren bir sayfaya gidin.
SC-8 Her WebView'da, doğrudan uygulamanız tarafından yüklenmeyen sitelere ve içeriklere gitmeye çalışın.
SC-9 Şifresiz metin trafiğini devre dışı bırakan bir Ağ Güvenlik Yapılandırması beyan edin ve uygulamayı test edin.
SC-10 Uygulamayı çalıştırın ve cihaz günlüğünü gözlemlerken tüm temel işlevleri kullanın. Hiçbir özel kullanıcı bilgisi günlüğe kaydedilmemelidir.
Google Play GP-1 Geliştirici profilinizi, uygulama açıklamanızı, ekran görüntülerinizi, öne çıkan görselinizi, içerik derecelendirmenizi ve kullanıcı geri bildirimlerinizi incelemek için Google Play Developer Console'da oturum açın.
GP-2 Özellik grafiğinizi ve ekran görüntülerinizi indirip hedeflediğiniz cihazlardaki ve form faktörlerindeki ekran boyutlarına uyacak şekilde küçültün.
GP-3 Uygulamaya veya genişletme dosyası indirme işlemine dahil edilen tüm grafik öğeleri, medya, metin, kod kitaplıkları ve diğer içerikleri inceleyin.

StrictMode ile test etme

Performans testi için uygulamanızda StrictMode özelliğini etkinleştirmenizi ve performansı etkileyebilecek işlemleri, ağ erişimlerini, dosya okuma/yazma işlemlerini vb. yakalamak için bu özelliği kullanmanızı öneririz. Hem ana iş parçacığında hem de diğer iş parçacıklarında sorunlu olabilecek işlemleri arayın.

StrictMode.ThreadPolicy.Builder kullanarak iş parçası başına izleme politikası ayarlayabilir ve detectAll() kullanarak ThreadPolicy'da desteklenen tüm izleme işlemlerini etkinleştirebilirsiniz.

ThreadPolicy için politika ihlallerinin görsel bildirimini etkinleştirdiğinizden emin olun. penaltyFlashScreen()