Kullanıcılar uygulamaların duyarlı ve hızlı yüklenmesini bekler. Başlangıç zamanı yavaş olan bir uygulama bu beklentiyi karşılamaz ve kullanıcıları hayal kırıklığına uğratabilir. Bu tür kötü bir deneyim, kullanıcıların Play Store'da uygulamanıza düşük puan vermesine, hatta uygulamanızı tamamen terk etmesine neden olabilir.
Bu sayfada uygulamanızın lansman zamanını optimize etmenize yardımcı olacak bilgiler sağlanmaktadır. Bu bilgiler arasında lansman sürecinin dahili özelliklerine genel bakış, başlangıç performansının nasıl profilleneceği ve yaygın başlangıç zamanı sorunlarından bazılarını ele almayla ilgili ipuçları yer almaktadır.
Farklı uygulama başlatma durumlarını anlama
Uygulama şu üç durumdan birinde başlatılabilir: baştan başlatma, hazır durumda başlatma veya çalışır durumda başlatma. Her durum, uygulamanızın kullanıcılara görünür hale gelmesinin ne kadar süreceğini etkiler. Sıfırdan başlatma sırasında uygulamanız sıfırdan başlar. Diğer durumlarda ise sistemin, çalışan uygulamayı arka planda ön plana getirmesi gerekir.
Optimizasyon işlemini her zaman baştan başlatma varsayımına göre yapmanızı öneririz. Bu adımlar, sıcak ve çalışır durumda başlatmaların performansını da artırabilir.
Uygulamanızı hızlı başlatma için optimize etmek amacıyla sistem ve uygulama düzeylerinde neler olduğunu ve bu durumların her birinde nasıl etkileşimde bulunduklarını anlamak faydalı olacaktır.
Uygulamanın başlatılmasını belirleyen iki önemli metrik, ilk görüntüye kadar geçen süre (TTID) ve tamamen çizim süresi (TTFD) şeklindedir. TTID, ilk karenin görüntülenmesi için geçen süredir. TTFD ise uygulamanın tamamen etkileşimli hale gelmesi için geçen süredir. TTID, kullanıcının uygulamanın yüklendiğini bilmesini sağladığı ve TTFD, uygulamanın gerçekten kullanılabilir olduğu zamanı bildirir. Bu nedenle, her ikisi de eşit derecede önemlidir. Bunlardan biri çok uzunsa kullanıcı, uygulamanız tam olarak yüklenmeden bile çıkabilir.
TTFD için doğru değerler elde etmek amacıyla, uygulama tam olarak çizilmiş duruma ulaştığında sinyal göndererek doğru zamanların ölçülmesini sağlayın. Bunu nasıl yapacağınızı öğrenmek için Başlangıç zamanlaması doğruluğunu iyileştirme bölümüne bakın.
Baştan başlatma
Baştan başlatma, bir uygulamanın sıfırdan başlamasını ifade eder. Bu, uygulamanın süreci başlayana kadar sistem tarafından sürecin oluşturulduğu anlamına gelir. Baştan başlatma, uygulamanızın cihaz başlatıldıktan sonra ilk kez başlatılması veya sistem uygulamayı sonlandırmasından sonra gerçekleştiği gibi durumlarda gerçekleşir.
Bu tür bir başlangıç, başlatma süresini en aza indirmenin en büyük zorluğunu oluşturur. Çünkü sistem ve uygulamaya, diğer başlatma durumlarına göre daha fazla iş düşer.
Soğuk başlatmanın başlangıcında, sistemin aşağıdaki üç görevi vardır:
- Uygulamayı yükleyip başlatın.
- Lansmandan hemen sonra uygulama için boş bir başlangıç penceresi görüntüleyin.
- Uygulama süreci oluşturun.
Sistem uygulama sürecini oluşturur oluşturmaz, uygulama süreci sonraki aşamalardan sorumludur:
- Uygulama nesnesini oluşturun.
- Ana iş parçacığını başlatın.
- Ana etkinliği oluşturun.
- Görüntülemeleri artırın.
- Ekranı düzenleyin.
- İlk çizimi yapın.
Uygulama işlemi ilk çizimi tamamladığında sistem işlemi, görüntülenen arka plan penceresini değiştirir ve yerine ana etkinlik getirir. Bu noktada kullanıcı uygulamayı kullanmaya başlayabilir.
Şekil 1'de sistem ve uygulama süreçlerinin birbirleri arasındaki çalışmaları nasıl aktardığı gösterilmektedir.

Uygulamanın oluşturulması ve etkinliğin oluşturulması sırasında performans sorunları ortaya çıkabilir.
Uygulama oluşturma
Uygulamanız başlatıldığında, sistem uygulamayı ilk kez çizmeyi bitirene kadar boş başlangıç penceresi ekranda kalır. Bu noktada, sistem işlemi, uygulamanızın başlangıç penceresini değiştirerek kullanıcının uygulamayla etkileşimde bulunmasını sağlar.
Kendi uygulamanızda Application.onCreate()
özelliğini geçersiz kılarsanız sistem, uygulama nesnenizde onCreate()
yöntemini çağırır.
Daha sonra uygulama, kullanıcı arayüzü iş parçacığı olarak da bilinen ana iş parçacığını oluşturur ve ana etkinliğinizi oluşturmakla görevlendirilir.
Bu noktadan itibaren, sistem ve uygulama düzeyindeki süreçler uygulama yaşam döngüsü aşamalarına uygun olarak ilerler.
Etkinlik oluşturma
Uygulama süreci, etkinliğinizi oluşturduktan sonra etkinlik aşağıdaki işlemleri gerçekleştirir:
- Değerleri başlatır.
- Oluşturucuları çağırır.
- Etkinliğin mevcut yaşam döngüsü durumuna uygun olan
Activity.onCreate()
gibi bir geri çağırma yöntemini çağırır.
Genellikle onCreate()
yöntemi, en yüksek ek yük ile (görünümleri yükleyip şişirme ve etkinliğin çalışması için gereken nesneleri başlatma) işleri yaptığı için yükleme süresi üzerinde en büyük etkiye sahiptir.
Hazır durumda başlatma
Hazır durumda başlatma, sıfırdan başlatma sırasında gerçekleşen işlemlerin bir alt kümesini kapsar. Aynı zamanda, çalışır durumda başlatmaya kıyasla daha fazla genel yükü de temsil eder. Aşağıdakiler gibi hazır durumda başlatma olarak değerlendirilebilecek birçok potansiyel durum vardır:
Kullanıcı uygulamanızı kapattıktan sonra yeniden başlatır. İşlem çalışmaya devam edebilir ancak uygulamanın
onCreate()
çağrısıyla etkinliği sıfırdan yeniden oluşturması gerekir.Sistem, uygulamanızı bellekten çıkarır ve sonra kullanıcı yeniden başlatır. İşlemin ve etkinliğin yeniden başlatılması gerekir. Ancak görev,
onCreate()
aracına iletilen kayıtlı örnek durumu paketinden bir şekilde yararlanabilir.
Çalışır durumda başlatma
Uygulamanızın çalışır durumda başlatılması, baştan başlatmaya kıyasla daha az ek yüke sahiptir. Çalışırken sistem, etkinliğinizi ön plana çıkarır. Uygulamanızın tüm etkinlikleri hâlâ bellekte yer alıyorsa uygulama tekrar eden nesne başlatma, düzen şişirme ve oluşturma işlemlerinin tekrarlanmasını önleyebilir.
Ancak onTrimMemory()
gibi bellek kırpma etkinliklerine yanıt olarak bir miktar bellek kalıcı olarak silinirse bu nesnelerin çalışır durumda başlatma etkinliğine yanıt olarak yeniden oluşturulması gerekir.
Çalışır durumda başlatma, ekranda baştan başlatma senaryosuyla aynı davranışı gösterir. Sistem işlemi, uygulamanın etkinliği oluşturmasını tamamlayana kadar boş bir ekran görüntüler.

Perfetto'da uygulama girişimi nasıl anlaşılır?
Uygulama başlatma aşamasında hata ayıklamak için, uygulama başlatma aşamasına tam olarak nelerin dahil olduğunu belirlemek faydalı olacaktır. Perfetto'da uygulama başlatma aşamasının tamamını tanımlamak için aşağıdaki adımları izleyin:
Perfetto'da, Android Uygulama Başlatmaları'ndan türetilen metriğin bulunduğu satırı bulun. Bunu görmüyorsanız cihaz üzerindeki sistem izleme uygulamasını kullanarak iz yakalamayı deneyin.
Şekil 3.Android App Startup'lar için Perfetto'da elde edilen metrik dilimi İlişkili dilimi tıklayın ve dilimi seçmek için m tuşuna basın. Dilimin etrafında parantezler görünür ve ne kadar sürdüğünü gösterir. Süre, Geçerli seçim sekmesinde de gösterilir.
İşaretçiyi satırın üzerine getirdiğinizde görünen raptiye simgesini tıklayarak Android Uygulama Başlangıçları satırını sabitleyin.
Aşağı kaydırarak söz konusu uygulamanın bulunduğu satıra gidin ve satırı genişletmek için ilk hücreyi tıklayın.
w tuşuna basarak ana ileti dizisini yakınlaştırın (uzaklaştırmak için sırasıyla s, a, d tuşlarına, sola taşımak ve sağa taşımak için).
Şekil 4.Android App Startup'lar için, uygulamanın ana iş parçacığının yanında bulunan metrik dilimi türetilmiştir. Türetilen metrikler dilimi, uygulama başlatma işlemine tam olarak nelerin dahil olduğunu görmeyi kolaylaştırır. Böylece hata ayıklama işlemine daha ayrıntılı şekilde devam edebilirsiniz.
Sorunları tespit etmek ve teşhis etmek için metrikleri kullanma
Başlatma süresi performansını doğru şekilde teşhis etmek için uygulamanızın başlamasının ne kadar sürdüğünü gösteren metrikleri izleyebilirsiniz. Android, uygulamanızda bir sorun olduğunu göstermek için çeşitli yollar sunar ve sorunu teşhis etmenize yardımcı olur. Android vitals bir sorun oluştuğunda sizi uyarabilir ve teşhis araçları sorunu teşhis etmenize yardımcı olabilir.
Başlangıç metriklerini kullanmanın avantajları
Android, yeni ve hazır durumda uygulama başlatma işlemlerini optimize etmek için ilk görüntüleme süresi (TTID) ve tam görüntüleme süresi (TTFD) metriklerini kullanır.
Android Runtime (ART), gelecekteki girişimlerin optimizasyonu için bu metriklerdeki verileri
kodu verimli bir şekilde önceden derlemek için kullanır.
Daha hızlı başlatmalar sayesinde kullanıcıların uygulamanızla daha uzun süre etkileşimde bulunması, erken çıkış, örneği yeniden başlatma veya farklı bir uygulamaya geçme durumlarını azaltır.
Android vitals
Android vitals, uygulamanızın başlangıç süreleri çok fazla olduğunda Play Console'da sizi uyararak uygulamanızın performansının iyileştirilmesine yardımcı olabilir.
Android vitals, uygulamanız için aşağıdaki başlatma sürelerini aşırı olarak değerlendirir:
- Normal başlatma 5 saniye veya daha uzun sürer.
- Sıcaklık başlatma işlemi 2 saniye veya daha uzun sürer.
- Hızlı başlatma 1,5 saniye veya daha uzun sürer.
Android vitals, ilk ekran görüntülenene kadar geçen süre (TTID) metriğini kullanır. Google Play'in Android vitals verilerini nasıl topladığı hakkında bilgi için Play Console dokümanlarına bakın.
İlk ekran görüntülenene kadar geçen süre
İlk görüntüleme süresi (TTID) metriği, bir uygulamanın ilk karesini oluşturması için gereken süreyi ölçer. Bu süreye sıfırdan başlatma sırasında işlem başlatma, soğuk veya hazır durumda başlatma sırasında etkinlik oluşturma ve ilk kareyi görüntüleme dahildir.
TTID nasıl alınır?
Logcat, Displayed
adlı değeri içeren bir çıkış satırı içerir. Bu değer, süreci başlatma ve ilgili etkinliği ekranda çizmeyi sonlandırma arasında geçen süreyi temsil eder. Geçen süre, aşağıdaki etkinlik dizisini kapsar:
- Süreci başlatın.
- Nesneleri başlatın.
- Etkinliği oluşturup başlatın.
- Düzeni büyütün.
- Uygulamanızı ilk kez çizme.
Bildirilen günlük satırı aşağıdaki örneğe benzer:
ActivityManager: Displayed com.android.myexample/.StartupTiming: +3s534ms
Logcat çıkışını komut satırından veya bir terminalden izliyorsanız geçen süreyi kolayca bulabilirsiniz. Android Studio'da geçen süreyi bulmak için logcat görünümünüzdeki filtreleri devre dışı bırakın. Bu günlüğü uygulamanın kendisi değil, sistem sunucusu sunduğu için filtrelerin devre dışı bırakılması gerekir.
Uygun ayarları yaptıktan sonra saati görmek için
doğru terimi arayabilirsiniz. Şekil 3'te, örnek açılır menüsünden "Filtre yok"u seçerek filtrelerin nasıl devre dışı bırakılacağı ve alt çıkışın ikinci satırında, Displayed
zamanının logcat çıkışı örneği gösterilmektedir.

Displayed
değerini bulma.Logcat çıkışındaki Displayed
metriği, tüm kaynakların yüklenip görüntülenmediği zamana kadar ne kadar süre gerektiğini yakalamayabilir. Düzen dosyasında referans verilmeyen veya nesne başlatma kapsamında uygulamanın oluşturduğu kaynakları dışarıda bırakır. Yükleme işlemi satır içi bir işlem olduğundan ve uygulamanın ilk görünümünü engellemediğinden bu kaynaklar hariç tutulur.
Bazen logcat çıkışındaki Displayed
satırı toplam süre için ek bir alan içerir. Örneğin:
ActivityManager: Displayed com.android.myexample/.StartupTiming: +3s534ms (total +1m22s643ms)
Bu durumda ilk kez ölçüm yalnızca ilk çizilen etkinlik içindir. total
süresi ölçümü, uygulama işlemi başlangıcında başlar ve önce başlatılan ancak ekranda hiçbir şey göstermeyen başka bir etkinliği içerebilir. total
süre ölçümü yalnızca tek etkinlik ile toplam başlatma süreleri arasında fark olduğunda gösterilir.
TTID'yi, uygulamanızı ADB Shell Activity Manager komutuyla çalıştırarak da ölçebilirsiniz. Aşağıda bununla ilgili bir örnek verilmiştir:
adb [-d|-e|-s <serialNumber>] shell am start -S -W
com.example.app/.MainActivity
-c android.intent.category.LAUNCHER
-a android.intent.action.MAIN
Displayed
metriği, logcat çıktısında önceki gibi görünür. Terminal pencereniz aşağıdakileri gösterir:
Starting: Intent
Activity: com.example.app/.MainActivity
ThisTime: 2044
TotalTime: 2044
WaitTime: 2054
Complete
-c
ve -a
bağımsız değişkenleri isteğe bağlıdır ve <category>
ile <action>
değerlerini belirtmenize olanak tanır.
Tam gösterime kadar geçen süre
Tam görüntüleme süresi (TTFD) metriği, uygulamanın ilk karesini tam içerikle (ilk kareden sonra eşzamansız olarak yüklenen içerik dahil) oluşturmak için geçen süreyi ölçer. Genellikle bu, uygulama tarafından bildirildiği üzere ağdan yüklenen birincil liste içeriğidir.
TTFD nasıl alınır?
Uygulamanın başlatılması ile tüm kaynakların eksiksiz bir şekilde gösterilmesi ve hiyerarşilerin görüntülenmesi arasında geçen süreyi ölçmek için reportFullyDrawn()
yöntemini kullanabilirsiniz. Bu, uygulamanın geç yükleme
gerçekleştirdiği durumlarda yararlı olabilir. Geç yüklemede uygulama, pencerenin ilk çizimini engellemez, bunun yerine kaynakları eşzamansız olarak yükler ve görünüm hiyerarşisini günceller.
Geç yükleme nedeniyle, bir uygulamanın ilk ekranı tüm kaynakları içermiyorsa tüm kaynakların ve görünümlerin tamamlanmış olarak yüklenmesini ve görüntülenmesini ayrı bir metrik olarak düşünebilirsiniz. Örneğin, kullanıcı arayüzünüz tamamen alınmış bir metinle yüklenmiş olabilir, ancak henüz uygulamanın ağdan getirmesi gereken resimleri göstermeyebilir.
Başlatma zamanlamasının doğruluğunu iyileştirin bölümünde, uygulamanız kullanıcıyla etkileşimli hale gelene kadar reportFullyDrawn
aramasını ertelemek için FullyDrawnReporter
'in nasıl kullanılacağı açıklanmaktadır.
Bu API'yi kullandığınızda logcat'in gösterdiği değer, uygulama nesnesinin oluşturulmasından reportFullyDrawn()
çağrılmasına kadar geçen süredir.
Aşağıda, logcat çıktısının bir örneği verilmiştir:
system_process I/ActivityManager: Fully drawn {package}/.MainActivity: +1s54ms
Logcat çıkışı, İlk gösterime kadar geçen süre bölümünde açıklandığı gibi bazen bir total
zamanı içerir.
Görüntüleme sürelerinizin istediğinizden daha yavaş olduğunu öğrenirseniz başlatma işlemindeki performans sorunlarını tespit etmeyi deneyebilirsiniz.
Performans sorunlarını tespit edin
Performans sorunlarını tespit etmek için Android Studio CPU Profiler'ı kullanabilirsiniz. Daha fazla bilgi için CPU Profiler ile CPU etkinliğini inceleme bölümüne bakın.
Ayrıca, uygulamalarınızın ve etkinliklerinizin onCreate()
yöntemlerinin içinde satır içi izlemeyi kullanarak olası performans sorunları hakkında da bilgi edinebilirsiniz. Satır içi izleme hakkında bilgi edinmek için Trace
işlevleri belgelerine ve sistem izlemeye genel bakış bölümüne göz atın.
Sık karşılaşılan sorunları çözme
Bu bölümde, uygulama başlatma performansını sıklıkla etkileyen çeşitli sorunlar ele alınmaktadır. Bu sorunlar esas olarak uygulama ve etkinlik nesnelerinin başlatılmasının yanı sıra ekranların yüklenmesiyle ilgilidir.
Uygulamaları yoğun şekilde başlatma
Kodunuz Application
nesnesini geçersiz kılar ve söz konusu nesneyi başlatırken ağır işler veya karmaşık mantık yürütürse başlatma performansı düşebilir. Application
alt sınıflarınız henüz yapılması gerekmeyen başlatma işlemleri gerçekleştirirse uygulamanız başlatma sırasında zaman kaybedebilir.
Uygulama bir amaca yanıt olarak başlatıldığında, ana etkinliğin durum bilgilerinin ilk kullanıma hazırlanması gibi bazı başlatma işlemleri tamamen gereksiz olabilir. Uygulama, belirli bir amaçla önceden başlatılmış durum verilerinin yalnızca bir alt kümesini kullanır.
Uygulamayı başlatma sırasında ortaya çıkan diğer zorluklar arasında etkili veya çok sayıda atık toplama etkinlikleri ya da başlatma sırasında eş zamanlı olarak gerçekleşen disk G/Ç'si yer alır. Bu da başlatma sürecini daha da engeller. Atık toplama işlemi, Dalvik çalışma zamanında özellikle dikkate alınan bir özelliktir. Android Çalışma Zamanı (ART), eşzamanlı olarak çöp toplama işlemi gerçekleştirir ve işlemin etkisini en aza indirir.
Sorunu teşhis etme
Sorunu teşhis etmek için yöntem izleme veya satır içi izlemeyi kullanabilirsiniz.
Yöntem izleme
CPU Profil Aracı çalıştırıldığında callApplicationOnCreate()
yönteminin sonunda com.example.customApplication.onCreate
yönteminizi çağırdığı görülür. Araç bu yöntemlerin uygulanmasının uzun sürdüğünü gösteriyorsa söz konusu işlemlerde neler olup bittiğini görmek için daha fazla araştırma yapın.
Satır içi izleme
Aşağıdakiler de dahil olmak üzere olası nedenleri araştırmak için satır içi izlemeyi kullanın:
- Uygulamanızın ilk
onCreate()
işlevi. - Uygulamanızın başlattığı tüm genel tekil nesneler.
- Performans sorunu sırasında meydana gelebilecek herhangi bir disk G/Ç, serileştirme işlemi veya sıkı döngüler.
Sorunun çözümleri
Sorun ister gereksiz başlatmalardan ister disk G/Ç'den kaynaklanıyor olsun, çözüm geç başlatmadır. Başka bir deyişle, yalnızca hemen ihtiyaç duyulan nesneleri başlatın. Genel statik nesneler oluşturmak yerine, uygulamanın nesneleri yalnızca ilk kez ihtiyaç duyduğunda başlattığı bir singleton kalıbına geçin.
Ayrıca, ilk kez yerleştirildiğinde nesneler ve bağımlılıklar oluşturan Hilt gibi bir bağımlılık ekleme çerçevesi kullanmayı da düşünün.
Uygulamanız başlangıçta uygulama bileşenlerini başlatmak için içerik sağlayıcıları kullanıyorsa bunun yerine Uygulama Başlatma kitaplığını kullanmayı düşünün.
Yoğun etkinlik başlatma
Etkinlik oluşturmak için genellikle çok fazla emek harcanması gerekir. Genellikle performans iyileştirmeleri elde etmek için bu çalışmayı optimize etme fırsatları vardır. Bu tür yaygın sorunlardan bazıları şunlardır:
- Büyük veya karmaşık düzenleri şişirme.
- Disk üzerinde ekran çizimi veya ağ G/Ç'si engelleniyor.
- Bit eşlemleri yükleme ve çözme.
VectorDrawable
nesneleri pikselleştiriliyor.- Etkinliğin diğer alt sistemlerinin başlatılması.
Sorunu teşhis etme
Bu durumda da, hem yöntem izleme hem de satır içi izleme yararlı olabilir.
Yöntem izleme
CPU Profiler'ı kullanırken uygulamanızın Application
alt sınıf kurucularına ve com.example.customApplication.onCreate()
yöntemlerine dikkat edin.
Araç bu yöntemlerin uygulanmasının uzun sürdüğünü gösteriyorsa söz konusu meselede neler olup bittiğini görmek için daha fazla araştırma yapın.
Satır içi izleme
Aşağıdakiler de dahil olmak üzere olası nedenleri araştırmak için satır içi izlemeyi kullanın:
- Uygulamanızın ilk
onCreate()
işlevi. - Başlattığı genel tekil nesneler.
- Performans sorunu sırasında meydana gelebilecek herhangi bir disk G/Ç, serileştirme işlemi veya sıkı döngüler.
Sorunun çözümleri
Birçok olası performans sorunu vardır ancak sık karşılaşılan iki sorun ve çözümü aşağıda verilmiştir:
- Görünüm hiyerarşiniz ne kadar geniş olursa uygulamanın bunu genişletmek için gereken süresi de o kadar artar.
Bu sorunu gidermek için uygulayabileceğiniz iki adım şunlardır:
- Gereksiz veya iç içe yerleştirilmiş düzenleri azaltarak görünüm hiyerarşinizi düzeltin.
- Lansman sırasında görünmesi gerekmeyen kullanıcı arayüzü bölümlerini şişirmeyin. Bunun yerine, uygulamanın daha uygun bir zamanda büyütebileceği alt hiyerarşiler için yer tutucu olarak bir
ViewStub
nesnesi kullanın.
- Tüm kaynak başlatma işlemlerinizin ana iş parçacığında olması da başlatmayı yavaşlatabilir. Bu sorunu aşağıdaki şekilde çözebilirsiniz:
- Uygulamanın bu işlemi farklı bir iş parçacığı üzerinde gerçekleştirebilmesi için tüm kaynak başlatma işlemlerini taşıyın.
- Uygulamanın, görünümlerinizi yükleyip göstermesine izin verin ve ardından bit eşlemlere ve diğer kaynaklara bağlı görsel özellikleri güncelleyin.
Özel başlangıç ekranları
Daha önce Android 11 (API düzeyi 30) veya önceki sürümlerde özel başlangıç ekranı uygulamak için aşağıdaki yöntemlerden birini kullandıysanız başlatma sırasında fazladan süre eklendiğini görebilirsiniz:
- Başlatma sırasında sistem tarafından çizilen ilk boş ekranı kapatmak için
windowDisablePreview
theme özelliğini kullanın. - Özel bir
Activity
kullanılıyor.
Android 12'den itibaren SplashScreen
API'ye geçiş yapılması zorunludur. Bu API, daha hızlı başlatma süresi sağlar ve başlangıç ekranınızı aşağıdaki şekillerde değiştirmenize olanak tanır:
- Başlangıç ekranının görünümünü değiştirmek için bir tema ayarlayın.
windowSplashScreenAnimationDuration
ile başlangıç ekranının ne kadar süreyle gösterileceğini kontrol edin.- Başlangıç ekranı animasyonunu özelleştirin ve başlangıç ekranını kapatırken animasyonu düzgün bir şekilde kullanın.
Ayrıca uyumlu kitaplık, geriye dönük uyumluluğu sağlamak ve tüm Android sürümlerinde başlangıç ekranı görünümü için tutarlı bir görünüm ve tarz oluşturmak amacıyla SplashScreen
API'yi geri aktarır.
Ayrıntılar için Başlangıç ekranı taşıma rehberine bakın.
Sizin için önerilenler
- Not: Bağlantı metni JavaScript kapalıyken gösterilir
- Yavaş oluşturma
- Makro karşılaştırma metriklerini yakalama
- Temel Profiller Oluşturma {:#creator-profile-rules}