Daha iyi bir Türkiye mümkün! Türkiye'nin girişimcilik ve inovasyon topluluğu·2018'den beri

Mobil Uygulama Geliştirme

/mobiluygulama

Fikirden App Store ve Google Play'e uzanan yolun tamamı tek kanalda. Swift, Kotlin, Flutter, React Native — platform fark etmez; uygulamanı nasıl yapacağını burada konuşuruz. Mimari kararlar, arayüz desenleri, yayın süreçleri, test ve sürüm yönetimi; ilk satırdan ilk indirmeye kadar ne varsa burada. Takıldığın yeri sor, öğrendiğini paylaş, uygulamanı yapan diğer üreticilerle omuz omuza ilerle.

#mobil uygulama geliştirme akışına dön

Çökme oranını yüzde 2,8'den 0,4'e indirmek: üç ayda neyi nasıl düzelttik

Uygulamamızın çökmesiz oturum oranı yüzde 97,2 idi, yani her yüz oturumun neredeyse üçünde çöküyordu. Mağaza puanımız düşüyordu ve yorumların çoğu bunu söylüyordu. Üç ayda bu oranı yüzde 99,6'ya çıkardık. Yöntemi anlatayım, çünkü yaptığımız şey kahramanlık değil, sıkıcı bir sıralama işiydi.

Birinci adım: doğru ölçüm. Çökme raporlarını topluyorduk ama kimse bakmıyordu. İlk iş, raporları etkilenen kullanıcı sayısına göre sıralamak oldu. Çökme sayısına göre sıralamak yanıltıcı, çünkü tek bir kullanıcının döngüye girip yüzlerce çökme üretmesi listeyi bozuyor.

İkinci adım: ilk beş çökme tipinin toplam etkisi. Listeyi çıkardığımızda ilk beş sorunun, etkilenen kullanıcıların yüzde 71'ini oluşturduğunu gördük. Yani her şeyi düzeltmeye çalışmak yerine beş şeye odaklanmak yetiyordu.

Çökmelerin ne olduğuna gelince, dördü klasikti. Null değere erişim, liste sınırları dışında indeks, ana iş parçacığında ağ bekleme sonucu oluşan yanıt vermeme ve bellek yetersizliği. Beşincisi ilginçti: belirli bir üreticinin belirli bir işletim sistemi sürümünde, kamera erişiminde çöküyordu. Bizde o cihaz yoktu, sanal cihaz havuzundan kiralayıp tekrar ettirdik.

Üçüncü adım: bellek. Çökmelerin önemli bir kısmı bellek yetersizliğiydi ve sebebi, yüksek çözünürlüklü görselleri küçültmeden belleğe almamızdı. Galeri ekranında yirmi görsel aynı anda tam boyutta yükleniyordu. Görsel yükleme kütüphanesini doğru yapılandırmak bu kalemi neredeyse sıfırladı.

Dördüncü adım: ana iş parçacığı. Yanıt vermeme kayıtlarına bakınca iki yerde veritabanı sorgusunu ana iş parçacığında yaptığımızı gördük. Eski kod, kimse fark etmemiş.

Beşinci adım: kademeli yayın. Artık her sürümü önce yüzde beşe açıyoruz, yirmi dört saat çökme oranına bakıyoruz, sorun yoksa artırıyoruz. Bu tek değişiklik, kötü bir sürümün bütün kullanıcı tabanına yayılmasını engelledi. İki kez yayını durdurup geri aldık.

Altıncı adım: sürüm notlarında dürüstlük. Çökme düzeltmelerini sürüm notlarında açıkça yazdık ve kötü yorum bırakan kullanıcılara cevap verip düzeltildiğini söyledik. Bir kısmı yorumunu güncelledi, puan ortalaması toparlandı.

Üç ayın sonunda mağaza puanımız 3,4'ten 4,2'ye çıktı. Gelirde de artış var ama bunu sadece çökmeye bağlamak doğru olmaz, aynı dönemde başka değişiklikler de yaptık.

Tavsiyem: çökme oranını haftalık takip edilen bir sayı haline getirin ve ekipte sahibi olsun. Kimsenin sahiplenmediği metrik düzelmiyor.

Sizde çökmesiz oturum oranı kaç, en çok hangi tip çökmeyle uğraşıyorsunuz?
8 1 yorum
Yorumlar (1)
@tolgaerdem · 18 gün önce 6
Etkilenen kullanıcı sayısına göre sıralama tavsiyesi çok doğru ve çoğu ekip bunu yanlış yapıyor. Bir ek: sürüm bazlı filtre de koyun, eski sürümlerdeki çökmeler listeyi doldurup güncel sorunları gizleyebiliyor.
Tanıtım videosu · 1 dk

inovanadolu'yu 1 dakikada tanı

Kanallar, sözlük, İlham blogu, kişilik testleri ve 140'tan fazla ücretsiz araç. Üretenlerin buluşma noktasında neler olduğunu kısaca izle.