Unity IAP Kurulumu: Uygulama İçi Satın Alma Rehberi

Unity IAP kurulumu ile uygulama içi satın alma özelliklerini oyunlarınıza entegre etmeyi öğrenin. Adım adım rehberimizle mobil oyunlarınızdan gelir elde edin.

Mobil oyunlar ve uygulamalar, günümüz dijital ekonomisinin önemli bir parçasıdır. Geliştiriciler için gelir elde etmenin en yaygın yollarından biri de uygulama içi satın alma (In-App Purchase – IAP) sistemleridir. Unity, bu karmaşık süreci basitleştiren güçlü bir IAP kurulumu çözümü sunar. Bu makalede, Unity IAP’nin ne olduğunu, nasıl kurulacağını ve başarılı bir şekilde nasıl entegre edileceğini adım adım inceleyeceğiz. Oyunlarınızdan veya uygulamalarınızdan etkili bir şekilde gelir elde etmek için bilmeniz gereken her şeyi burada bulacaksınız.

Unity IAP Nedir ve Neden Önemlidir?

Unity IAP, Unity Technologies tarafından sağlanan, mobil oyun ve uygulamalara uygulama içi satın alma özellikleri eklemeyi kolaylaştıran bir kütüphanedir. Bu sistem, geliştiricilerin farklı platformlar (iOS, Android vb.) için ayrı ayrı kod yazma ihtiyacını ortadan kaldırır ve tek bir API ile tüm satın alma işlemlerini yönetmelerini sağlar. Oyun içi para birimi, yeni karakterler, seviye atlamalar, reklamsız deneyimler veya abonelikler gibi ürünler, IAP aracılığıyla kullanıcılara sunulabilir.

Neden önemlidir?

  • Gelir Kaynağı: Ücretsiz veya freemium modelindeki uygulamalar için temel gelir kapısıdır.
  • Kullanıcı Deneyimi: Kullanıcılara ekstra içerik veya avantajlar sunarak bağlılığı artırır.
  • Çapraz Platform Desteği: Tek bir kod tabanıyla birden fazla platformda çalışır.
  • Kolay Entegrasyon: Unity’nin kendi paketi olduğu için kurulumu ve yönetimi nispeten basittir.

Üç ana ürün türü vardır:

  • Tüketilebilir (Consumable): Bir kez kullanılıp tükenen ürünler (örn: oyun içi para, can).
  • Tüketilemez (Non-Consumable): Bir kez satın alındığında kalıcı olan ürünler (örn: yeni karakter, seviye paketi).
  • Abonelik (Subscription): Belirli aralıklarla yenilenen, dönemsel erişim sağlayan ürünler (örn: premium üyelik).

Bu ürün türlerini doğru anlamak, Unity IAP kurulumu sürecinde stratejinizi belirlemenize yardımcı olacaktır.

Temel Adımlar: Unity IAP Kurulumuna Başlangıç

Unity IAP’yi projenize entegre etmek için belirli bir sıralama izlemeniz gerekir. Bu adımlar, sistemin doğru bir şekilde çalışmasını sağlamak için kritik öneme sahiptir.

1. Unity IAP Paketini Yükleme

İlk adım, Unity IAP paketini projenize dahil etmektir. Unity Editor’da Window > Package Manager yolunu izleyin. “Unity Registry” altında “In-App Purchasing” paketini bulun ve yükleyin. Bu paket, IAP işlemlerini yönetmek için gerekli tüm kütüphaneleri ve araçları projenize ekleyecektir. Yükleme tamamlandıktan sonra, projenizin ayarlarında IAP ile ilgili yeni seçenekler belirecektir.

2. Satın Alma Ürünlerinizi Tanımlama

Paket yüklendikten sonra, uygulamanızda satmak istediğiniz ürünleri tanımlamanız gerekir. Bunun için Window > Unity IAP > IAP Catalog menüsünü kullanın. Burada “Add Product” butonuna tıklayarak ürünlerinizi ekleyebilirsiniz.

  • Her ürün için benzersiz bir Product ID belirlemelisiniz. Bu ID, hem Unity projenizde hem de Google Play Console veya Apple App Store Connect gibi platformlarda aynı olmalıdır.
  • Ürünün türünü seçin (Consumable, Non-Consumable, Subscription).
  • Varsayılan fiyatları ve yerelleştirilmiş başlık/açıklamaları da burada girebilirsiniz. Bu katalog, Unity IAP kurulumunun en önemli parçalarından biridir, çünkü tüm ürünlerinizin merkezi bir listesini oluşturur.

3. IAP Kod Yapısını Oluşturma

Unity IAP, IStoreListener arayüzünü kullanarak satın alma olaylarını dinleyen bir C# script’i gerektirir. Bu script, IAP sistemini başlatmaktan, satın alma işlemlerini yönetmeye ve hataları işlemeye kadar her şeyden sorumludur.

  • Yeni bir C# script oluşturun ve IStoreListener arayüzünü uygulayın.
  • OnInitialized(IStoreController controller, IExtensionProvider extensions): IAP sistemi başarıyla başlatıldığında çağrılır. controller nesnesi ile ürünlere erişebilir ve satın alma işlemlerini başlatabilirsiniz.
  • OnInitializeFailed(InitializationFailureReason error): Başlatma sırasında bir hata oluştuğunda çağrılır.
  • ProcessPurchase(PurchaseEventArgs args): Bir satın alma işlemi başarılı olduğunda çağrılır. Burada satın alınan ürünü doğrulamanız ve kullanıcıya teslim etmeniz gerekir. Örneğin, oyun içi para eklemek veya yeni bir özelliği etkinleştirmek gibi.
  • OnPurchaseFailed(Product product, PurchaseFailureReason failureReason): Bir satın alma işlemi başarısız olduğunda çağrılır. Kullanıcıya uygun bir geri bildirim sağlamanız önemlidir.

Bu script, uygulamanızın satın alma mantığının kalbini oluşturur ve Unity IAP kurulumunun işlevsel kısmını tamamlar.

Platforma Özel Ayarlar ve Testler

Unity IAP, platformlar arası çalışsa da, nihai dağıtım ve test için her platformun kendi geliştirici konsolunda bazı özel ayarlamalar yapmanız gerekir.

Google Play Store ve Apple App Store Entegrasyonu

  • Google Play Console: Geliştirici hesabınızda uygulamanızı oluşturduktan sonra, IAP Catalog’da tanımladığınız ürün ID’lerini kullanarak uygulama içi ürünlerinizi (Managed Products veya Subscriptions) oluşturmanız gerekir. Fiyatlandırma, açıklama ve görselleri burada ayarlarsınız. Ayrıca, test etmek için dahili test kullanıcıları veya alfa/beta test grupları oluşturmanız önemlidir.
  • Apple App Store Connect: Benzer şekilde, App Store Connect’te uygulamanızı oluşturmalı ve uygulama içi satın alma ürünlerinizi (Consumable, Non-Consumable, Auto-Renewable Subscription) tanımlamalısınız. Her ürün için benzersiz bir ürün ID’si ve fiyatlandırma belirleyin. Test için Sandbox kullanıcıları oluşturmak, gerçek para harcamadan satın alma işlemlerini simüle etmenizi sağlar. Uygulamanızın Bundle Identifier’ının doğru ayarlandığından ve imzalandığından emin olun.

Test Süreçleri ve Dikkat Edilmesi Gerekenler

  • Sahte Mağazalar (Fake Stores): Unity IAP, geliştirme aşamasında test yapmak için “Fake Store” özelliği sunar. Bu, gerçek bir platforma bağlanmadan satın alma akışlarını test etmenizi sağlar.
  • Gerçek Cihaz Testi: En kritik test adımı, uygulamanızı gerçek bir cihazda, platforma özel test hesaplarıyla (Sandbox veya dahili test) denemektir. Bu, ödeme akışını, ürün teslimini ve olası hataları doğru bir şekilde simüle etmenizi sağlar.
  • Hata Senaryoları: Ağ bağlantı kesintileri, başarısız ödemeler, iptal edilen işlemler gibi olumsuz senaryoları test etmek, uygulamanızın sağlamlığını artırır.
  • Ürün Teslimatı: Satın alınan ürünlerin kullanıcıya doğru bir şekilde teslim edildiğinden ve kalıcılığının sağlandığından emin olun.

Güvenlik ve En İyi Uygulamalar

Uygulama içi satın alma sistemlerinde güvenlik, kullanıcı güvenini sağlamak ve gelir kaybını önlemek için hayati öneme sahiptir.

  • Makbuz Doğrulaması (Receipt Validation): En önemli güvenlik önlemlerinden biri, satın alma makbuzlarını sunucu tarafında doğrulamaktır. Bu, sahte makbuzlarla yapılan hileli satın alma girişimlerini engeller. Unity IAP, yerleşik bir makbuz doğrulama servisi sunar, ancak daha sağlam bir çözüm için kendi sunucunuzda doğrulamayı tercih etmelisiniz.
  • Kod Karartma (Obfuscation): Uygulama kodunuzu karartmak (obfuscate etmek), saldırganların kodunuzu analiz etmesini ve IAP sisteminizi manipüle etmesini zorlaştırır.
  • Kullanıcı Deneyimi: Satın alma süreci boyunca kullanıcılara net geri bildirimler sunun. Bir satın alma işlemi başlatıldığında, tamamlandığında veya başarısız olduğunda kullanıcıyı bilgilendirin. Yükleme ekranları veya onay mesajları, deneyimi iyileştirir.
  • Hata Yönetimi: Olası hataları yakalayın ve kullanıcılara bu hatalar hakkında anlamlı mesajlar gösterin. Bu, bir sorun olduğunda kullanıcıların ne yapmaları gerektiğini anlamalarına yardımcı olur.

Bu güvenlik ve UX ipuçları, Unity IAP kurulumunuzun hem güvenli hem de kullanıcı dostu olmasını sağlar.

Sonuç

Unity IAP, mobil oyun ve uygulama geliştiricileri için uygulama içi satın alma sistemlerini entegre etmenin güçlü ve esnek bir yolunu sunar. Bu rehberde ele aldığımız adımları takip ederek, projenize başarılı bir şekilde IAP özelliklerini ekleyebilir, ürünlerinizi tanımlayabilir, kod mantığını kurabilir ve platforma özel ayarları yapılandırabilirsiniz. Güvenlik ve kullanıcı deneyimini ön planda tutarak, uygulamanızdan sürdürülebilir bir gelir modeli oluşturabilirsiniz. Unity IAP kurulumu ilk başta karmaşık görünse de, doğru adımlarla ve dikkatli testlerle sorunsuz bir şekilde tamamlanabilir. Şimdi sıra sizde: bu bilgileri kullanarak kendi uygulama içi satın alma sisteminizi hayata geçirin!