Mobil Uygulama Geliştirme
iOS ve Android için kullanıcı dostu, markanızın diliyle uyumlu mobil uygulamalar tasarlayıp geliştiriyoruz.
Neler sunuyoruz
- iOS ve Android desteği
- Kullanıcı odaklı arayüz
- Mağaza yayın süreci
Mobil uygulama geliştirme neyi kapsar?
Mobil uygulama geliştirme, telefonda birkaç dokunuşla kullanılan bir ürünü fikir aşamasından mağaza sayfasına kadar taşıyan işin tamamıdır. Yalnızca kod yazmaktan ibaret değildir: kullanıcının neye ihtiyaç duyduğunu anlamak, ekran akışlarını kurgulamak, arayüzü tasarlamak, verinin nerede tutulacağına karar vermek ve uygulamayı App Store ile Google Play kurallarına uygun şekilde yayınlamak da bu sürecin parçasıdır.
Bir iOS Android uygulama projesini genellikle şu başlıklar altında ele alırız:
- Keşif ve kapsam: hedef kullanıcı, temel senaryolar ve ilk sürümde neyin olup neyin olmayacağı.
- Kullanıcı deneyimi: ekran akışları, iskelet çizimler ve tıklanabilir prototip.
- Arayüz tasarımı: marka renkleri, tipografi, ikonlar ve iki platformun alışkanlıklarına uygun bileşenler.
- Geliştirme: uygulamanın kendisi, arka uç servisleri ve gerekiyorsa yönetim paneli.
- Test ve yayın: farklı cihazlarda deneme, mağaza sayfalarının hazırlanması ve inceleme süreci.
- Yayın sonrası: hata takibi, yeni işletim sistemi sürümlerine uyum ve yeni özellikler.
Uygulama mı, web uygulaması mı?
Her fikrin mağazada yer alan bir uygulamaya ihtiyacı yoktur. Kullanıcılarınız ürünü ayda bir iki kez açacaksa ve bildirim, kamera ya da konum gibi cihaz özelliklerine ihtiyaç duyulmuyorsa, tarayıcıda çalışan bir web uygulaması daha hızlı devreye girer ve daha az bakım ister.
Mobil uygulama geliştirme yatırımı; düzenli kullanım, anlık bildirim, çevrim dışı çalışma, cihaz donanımına erişim ya da mağazada görünür olma gerektiğinde anlam kazanır. Bu ayrımı ilk görüşmede açıkça konuşuruz. Web tarafı daha uygunsa sizi özel web uygulamaları seçeneğine yönlendiririz; bazı projelerde ikisi birlikte çalışır: müşteri telefondaki uygulamayı, ekibiniz web tabanlı paneli kullanır.
Hangi işletmeler için anlamlı?
Mobil uygulama geliştirme en çok, müşterisiyle sık ve tekrar eden bir ilişki kuran işletmelere değer katar. Sipariş ve sadakat uygulaması isteyen restoranlar ve mağazalar, randevuyla çalışan klinikler ve stüdyolar, üyelerine içerik sunan eğitim ve spor işletmeleri bu grubun tipik örnekleridir. Saha ekibi olan şirketler için ise iç kullanıma yönelik uygulamalar, kâğıt formların ve mesajlaşma gruplarının yerini alabilir.
iOS Android uygulama için teknik yaklaşım seçimi
İki platformda yayınlanacak bir uygulamada ilk teknik karar, kodun nasıl yazılacağıdır. Bu seçim mobil uygulama geliştirme bütçesini, sonraki güncellemelerin hızını ve uygulamanın cihaz özelliklerine ne kadar derinden erişebileceğini doğrudan etkiler. Doğru cevap projeye göre değişir; aşağıdaki seçenekleri sizinle birlikte tartarız.
Native geliştirme
Native yaklaşımda iOS için Swift, Android için Kotlin ile iki ayrı uygulama yazılır. Platformun tüm imkânlarına doğrudan erişilir; yoğun animasyon, ileri kamera işlemleri, Bluetooth gibi donanım bağlantıları ya da yüksek performans gerektiren uygulamalarda güçlü bir seçenektir. Karşılığında iki ayrı kod tabanının ayrı ayrı bakımı gerekir.
Cross-platform geliştirme
Flutter ya da React Native gibi çerçevelerle tek bir kod tabanından hem iOS hem Android sürümü üretilir. Katalog ve sipariş, rezervasyon, üyelik ve iş takibi gibi uygulamaların büyük kısmı bu yaklaşımla rahatça geliştirilebilir. Tek kod tabanı, yeni bir özelliğin iki platforma aynı anda gelmesini kolaylaştırır ve bakım yükünü azaltır.
Kararı neler belirler?
Bir iOS Android uygulama projesinde yaklaşımı seçerken şu sorulara bakarız:
- Uygulama hangi cihaz özelliklerini kullanacak: kamera, konum, Bluetooth, sağlık verileri, arka planda çalışma?
- Arayüzde ne kadar animasyon var ve performans beklentisi ne?
- Yayından sonra ne sıklıkta güncelleme yapılacak ve bakım bütçesi ne?
- Uygulamayı ileride sizin ya da başka bir ekibin devralma ihtimali var mı?
- Uygulama mevcut sistemlerinizle hangi yoldan veri alışverişi yapacak?
Performans ve erişilebilirlik
Hangi yaklaşım seçilirse seçilsin, uygulamanın orta seviye ve eski cihazlarda da akıcı çalışması gerekir. Mobil uygulama geliştirme sırasında açılış süresini, görsellerin boyutunu ve zayıf bağlantıda ekranların nasıl davrandığını ayrıca test ederiz. Yazı boyutu büyütüldüğünde bozulmayan ekranlar, yeterli renk kontrastı ve ekran okuyucularla uyumlu düğmeler de baştan plana dahildir.
Mobil uygulama geliştirme sürecimiz
Mobil uygulama geliştirme projelerinde en pahalı hatalar, kod yazılmaya başlandıktan sonra fark edilen kapsam belirsizlikleridir. Bu yüzden süreci küçük ve kontrol edilebilir adımlara böleriz, her adımın sonunda sizin onayınızı alırız.
- Keşif görüşmesi: iş hedefinizi, kullanıcılarınızı ve uygulamanın çözmesi gereken asıl sorunu konuşuruz.
- Kapsam dokümanı: ilk sürümün özellik listesini, kullanıcı rollerini ve entegrasyonları yazılı hâle getiririz.
- Akışlar ve prototip: ekranlar arası geçişleri çizer, tıklanabilir bir prototiple deneriz.
- Arayüz tasarımı: markanıza uygun görsel dili iki platformun alışkanlıklarına göre uyarlarız.
- Geliştirme döngüleri: işi kısa döngülere böler, her döngünün sonunda test sürümünü sizinle paylaşırız.
- Test: farklı ekran boyutlarında, işletim sistemi sürümlerinde ve bağlantı koşullarında deneriz.
- Mağaza yayını: mağaza sayfalarını hazırlar, uygulamayı incelemeye gönderir ve gelen geri bildirimleri yönetiriz.
Kapsam dokümanında neler yer alır?
Kapsam dokümanı, mobil uygulama geliştirme boyunca iki tarafın da başvurduğu ortak referanstır. İçinde kullanıcı rolleri, her rolün yapabildiği işlemler, ekran listesi, bağlanılacak sistemler, bildirim senaryoları ve ilk sürüme alınmayan özellikler yer alır. Yeni bir fikir geldiğinde bu dokümana bakarak onun ilk sürüme mi yoksa sonraki bir sürüme mi ait olduğuna birlikte karar veririz.
Prototip neden önemli?
Tıklanabilir prototip, henüz tek satır kod yazılmadan uygulamayı elinize almanızı sağlar. Ekip arkadaşlarınız ve birkaç gerçek kullanıcı prototipi denediğinde karışık bir menü ya da gereksiz bir adım erken fark edilir. Prototip aşamasında yapılan bir değişiklik, mobil uygulama geliştirme ilerledikten sonra yapılan aynı değişiklikten çok daha az emek ister.
Platform farklarına uygun tasarım
iPhone ve Android kullanıcıları farklı alışkanlıklara sahiptir: geri dönme hareketi, menülerin yeri, tarih seçici ya da paylaşım ekranı iki platformda farklı çalışır. Bir iOS Android uygulama tasarımında marka dilini ortak tutar, bu tür davranışları ise her platformun kendi kalıbına bırakırız. Böylece kullanıcı uygulamayı ilk açtığında yabancılık çekmez.
İlk sürümü küçük tutmak
İyi bir ilk sürüm her şeyi yapan değil, tek bir işi çok iyi yapan uygulamadır. Kapsamı “ilk sürüm” ve “sonraki sürümler” olarak ayırmanızı öneririz. Böylece uygulama kullanıcıya daha erken ulaşır ve sonraki özellikler tahmine değil, gerçek kullanım verisine göre şekillenir.
İlk açılış ve izin istekleri
Kullanıcı uygulamayı ilk açtığında karşısına çıkan birkaç ekran, uygulamayı kullanmaya devam edip etmeyeceğini büyük ölçüde belirler. Bildirim, konum ya da kamera iznini ilk saniyede istemek yerine, kullanıcı ilgili özelliğe geldiğinde ve iznin neden gerektiğini anladığında istemeyi tercih ederiz. Bir iOS Android uygulama için bu küçük tercih, iznin verilme ihtimalini ve kullanıcının güvenini doğrudan etkiler.
Test sürümlerini sizinle paylaşmak
Geliştirme sırasında test sürümlerini iOS tarafında TestFlight, Android tarafında Google Play’in test kanalları üzerinden paylaşırız. Siz ve ekibiniz uygulamayı kendi telefonlarınıza kurar, gerçek kullanım koşullarında dener ve notlarınızı iletirsiniz. Bu notlar bir sonraki geliştirme döngüsünün öncelik listesine girer.
Arka uç, yönetim paneli ve entegrasyonlar
Kullanıcının gördüğü ekranlar işin görünen kısmıdır. Çoğu uygulama; kullanıcı hesaplarını, siparişleri, içerikleri ve bildirimleri yöneten bir arka uca ihtiyaç duyar. Mobil uygulama geliştirme planı yapılırken bu katmanın da baştan tasarlanması gerekir; aksi hâlde uygulama yayına çıktıktan sonra veri yapısını değiştirmek zorlaşır.
- Kullanıcı yönetimi: kayıt, giriş, şifre yenileme ve hesap silme akışları.
- Yönetim paneli: ekibinizin içerik, ürün, sipariş ya da randevuları uygulamaya dokunmadan güncelleyebildiği web paneli.
- Bildirimler: iOS’ta Apple Push Notification service, Android’de Firebase Cloud Messaging üzerinden gönderilen anlık bildirimler.
- Analitik: hangi ekranların kullanıldığını ve kullanıcıların hangi adımda ayrıldığını gösteren ölçümleme.
- Hata takibi: uygulama çöktüğünde bunun hangi cihazda ve hangi adımda olduğunu bildiren raporlama.
Uygulamanız çoğu zaman tek başına çalışmaz; e-ticaret altyapınız, ERP ya da muhasebe yazılımınız, CRM’iniz veya ödeme kuruluşunuzla veri alışverişi yapması gerekir. Bu bağlantıları API ve sistem entegrasyonları tarafında planlarız. Mevcut sistemlerinizin API sunup sunmadığı, mobil uygulama geliştirme kapsamını belirleyen ilk sorulardan biridir.
Güvenlik de bu katmanın parçasıdır. Uygulama ile sunucu arasındaki trafiğin şifreli olmasını, oturum bilgilerinin cihazda güvenli alanlarda saklanmasını ve uygulamanın yalnızca gerçekten ihtiyaç duyduğu izinleri istemesini sağlarız. Yönetim panelinde ise her ekip üyesinin yalnızca kendi işiyle ilgili bölümleri görmesi için rol bazlı yetkilendirme kurarız.
Mağaza yayın süreci ve sonrası
Uygulamanın hazır olması, mağazada yayında olması anlamına gelmez. Apple ve Google her uygulamayı ve her güncellemeyi kendi kurallarına göre inceler. Bir iOS Android uygulama projesinde mağaza hazırlıklarını geliştirmenin sonuna bırakmak yerine baştan plana dahil ederiz.
Geliştirici hesapları
Uygulamanın sizin adınıza yayınlanması için Apple Developer Program üyeliği ve Google Play geliştirici hesabı gerekir. Apple’da üyelik yıllık ücretlidir; Google Play’de ise kayıt sırasında tek seferlik bir ücret alınır. Kurum adına açılan hesaplarda Apple D-U-N-S numarası ister, Google da kurum hesaplarında kimlik ve işletme doğrulaması yapar. Hesapların şirketiniz adına açılmasını ve sahipliğin sizde kalmasını öneririz.
İnceleme kuralları
Apple’ın App Store inceleme yönergeleri güvenlik, performans, iş modeli, tasarım ve yasal uyum başlıklarında uygulamanın karşılaması gereken koşulları sıralar. Google tarafında yayın, sürümler, test kanalları ve politika bildirimleri Google Play Console üzerinden yönetilir. Sık görülen ret sebepleri arasında eksik içerik, çalışmayan bağlantılar, inceleme ekibine demo hesabı verilmemesi ve eksik gizlilik bilgileri bulunur.
Gizlilik, KVKK ve kullanıcı izinleri
İki mağaza da bir gizlilik politikası bağlantısı ve uygulamanın hangi verileri topladığına dair beyan ister: App Store’da gizlilik etiketleri, Google Play’de veri güvenliği bölümü. Uygulama içinde hesap oluşturulabiliyorsa, hesabın uygulama içinden silinebilmesi de beklenir. Türkiye’deki kullanıcılar için KVKK kapsamındaki aydınlatma metni ve gerekiyorsa açık rıza adımları ayrıca hazırlanmalıdır; bu metinlerin son hâlini hukuk danışmanınızla belirlemenizi öneririz.
Uygulama içi ödemeler
Uygulama içinde dijital içerik ya da abonelik satılacaksa, Apple ve Google genel olarak kendi ödeme sistemlerinin kullanılmasını ister. Fiziksel ürün ve yerinde verilen hizmet satışlarında ise kendi ödeme altyapınızı kullanabilirsiniz. Bu ayrım gelir modelinizi etkilediği için kapsam aşamasında netleştiririz.
Mağaza sayfası ve görünürlük
Mağaza sayfası, uygulamanın vitrinidir. Uygulama adı, kısa açıklama, ekran görüntüleri, tanıtım metni ve anahtar kelimeler hem mağaza içi aramalarda bulunmanızı hem de sayfayı ziyaret edenin uygulamayı indirmesini etkiler. Ekran görüntülerini yalnızca ekranın kopyası olarak değil, uygulamanın ne işe yaradığını birkaç karede anlatan bir hikâye olarak hazırlarız.
Yayından sonra bakım
Mobil uygulama geliştirme yayınla bitmez. Apple ve Google düzenli olarak yeni işletim sistemi sürümleri çıkarır; Google Play, uygulamaların belirli bir süre içinde güncel Android API seviyesini hedeflemesini şart koşar. Kütüphane güncellemeleri, güvenlik yamaları ve kullanıcı geri bildirimleri sürekli ilgi ister. Bu işleri bakım ve teknik destek kapsamında üstlenebiliriz.
Güncellemeleri de kontrollü yayınlarız. App Store’daki aşamalı yayın ve Google Play’deki kademeli dağıtım seçenekleri, yeni sürümün önce kullanıcıların bir kısmına ulaşmasını sağlar. Çökme raporlarında beklenmeyen bir artış görülürse dağıtımı durdurup sorunu düzeltmek, tüm kullanıcıları etkileyen bir hatayla uğraşmaktan çok daha kolaydır.
Mobil uygulama geliştirmede kapsamı belirleyen etkenler
Mobil uygulama geliştirme bütçesini tek bir rakamla anlatmak mümkün değildir; aynı adı taşıyan iki uygulamanın kapsamı çok farklı olabilir. Fiyatı ve takvimi, kapsam dokümanı netleştikten sonra yazılı olarak paylaşırız. Kapsamı en çok şu etkenler belirler:
- Ekran sayısı ve kullanıcı rolleri (müşteri, kurye, yönetici gibi).
- Ödeme, harita, kamera, sohbet, takvim gibi özel modüller.
- Bağlanılacak sistemlerin sayısı ve bu sistemlerin hazır API sunup sunmaması.
- Çevrim dışı çalışma, çoklu dil ve erişilebilirlik gereksinimleri.
- Yönetim panelinin kapsamı ve raporlama ihtiyacı.
- Yayın sonrası bakım ve yeni özellik geliştirme beklentisi.
Hazırlamanız gerekenler
Mobil uygulama geliştirme görüşmesine aşağıdakilerle gelirseniz kapsamı çok daha hızlı netleştirebiliriz:
- Uygulamanın çözmesi gereken sorunu anlatan bir iki paragraflık özet.
- Beğendiğiniz ve beğenmediğiniz örnek uygulamalar, nedenleriyle birlikte.
- Logo, renk paleti ve varsa kurumsal kimlik dosyalarınız.
- Bağlanılacak sistemlerin listesi ve teknik sorumlularının iletişim bilgileri.
- Apple ve Google geliştirici hesaplarını açacak şirket bilgileri.
- Uygulamada yer alacak metinler, ürün verileri ve görseller.
Teklifleri karşılaştırırken nelere bakmalı?
Mobil uygulama geliştirme teklifleri ilk bakışta benzer görünse de içerikleri çok farklı olabilir. Teklifleri yan yana koyarken şu soruların cevabını arayın:
- Arayüz tasarımı ve prototip teklife dahil mi?
- Arka uç ve yönetim paneli ayrı mı fiyatlanıyor?
- Mağaza sayfalarının hazırlanması ve inceleme süreci kimin sorumluluğunda?
- Kaynak kodu teslim ediliyor mu, sahiplik kimde kalıyor?
- Yayın sonrası hata düzeltme ve bakım koşulları yazılı mı?
Sık yapılan hatalar
- İlk sürüme her şeyi sığdırmak: yayın gecikir, kullanıcı geri bildirimi geç gelir.
- Web sitesini olduğu gibi uygulamaya taşımak: telefondaki kullanıcı farklı davranır; akışların mobil kullanıma göre kurgulanması gerekir.
- Mağaza hesaplarını başkası adına açtırmak: uygulamanın ve hesapların sahipliği sizde olmalıdır.
- Bakımı bütçeye koymamak: güncellenmeyen uygulama zamanla yeni cihazlarda sorun çıkarır.
- Ölçümleme olmadan yayınlamak: hangi özelliğin kullanıldığını bilmeden sonraki sürüm planlanamaz.
Başarıyı nasıl ölçeriz?
İndirme sayısı tek başına yanıltıcı olabilir; asıl önemli olan, uygulamayı indiren kişinin geri dönüp dönmediğidir. Yayından sonra aktif kullanıcı sayısını, kullanıcıların hangi adımda ayrıldığını, çökme raporlarını ve mağaza yorumlarını birlikte izleriz. Bir iOS Android uygulama için bu veriler, sonraki sürümde neyin geliştirileceğine karar vermenin en sağlam dayanağıdır.
Sık sorulan sorular
Mobil uygulama geliştirme ne kadar sürer?
Süre; ekran sayısına, entegrasyonlara ve mağaza inceleme sürecine göre değişir. Kapsam dokümanı netleştikten sonra adım adım bir takvim çıkarır ve size yazılı olarak iletiriz.
Tek bir iOS Android uygulama ile iki mağazada da yayın yapılabilir mi?
Evet. Cross-platform bir çerçeveyle tek kod tabanından hem App Store hem Google Play için sürüm üretilebilir. Uygulamanın cihaz özelliklerine ihtiyacı fazlaysa native geliştirmeyi de değerlendiririz.
Uygulamanın kaynak kodu ve mağaza hesapları kime ait olur?
Mağaza hesaplarının şirketiniz adına açılmasını öneririz. Kaynak kodu ve hesapların sahipliğine ilişkin koşulları proje başında sözleşmede açıkça yazarız.
Mevcut web sitemle uygulama aynı verileri kullanabilir mi?
Kullanabilir. Web sitenizin altyapısı API sunuyorsa uygulama aynı ürün, üye ve sipariş verisini kullanır; sunmuyorsa önce bu bağlantı katmanını kurarız.
Uygulama mağazadan reddedilirse ne olur?
Apple ve Google ret durumunda gerekçeyi bildirir. Gerekçeye göre düzeltmeyi yapar, gerekirse açıklama ekler ve uygulamayı yeniden incelemeye göndeririz.
Mobil uygulama geliştirme sonrasında güncellemeleri kim yapar?
Bakım ve geliştirme desteğini biz sürdürebiliriz ya da kodu ve dokümantasyonu kendi ekibinize teslim ederiz. Hangi yolun uygun olduğunu proje başında birlikte belirleriz.
Uygulama fikrinizi birlikte netleştirelim
Elinizde yalnızca bir fikir de olsa, ayrıntılı bir kapsam da olsa ilk adım kısa bir görüşmedir. Uygulamanın kimin için ve hangi sorunu çözmek için yapılacağını konuşur, size uygun mobil uygulama geliştirme yaklaşımını ve sonraki adımları açıkça anlatırız. İletişim sayfamızdan bize ulaşabilirsiniz.
Bu bölümün diğer hizmetleri
-
Özel Web Uygulamaları İş süreçlerinize özel; güvenli, hızlı ve ölçeklenebilir web uygulamaları geliştiriyoruz.
-
Yönetim Panelleri ve Raporlama Müşteri, sipariş ve operasyon verilerinizi tek ekrandan yönetebileceğiniz paneller kuruyoruz.
-
API ve Sistem Entegrasyonları Kullandığınız yazılımları birbirine bağlayarak veri akışını otomatik ve hatasız hale getiriyoruz.