"Reklamları devre dışı bırak" satın alma işlemini oyunuma nasıl uygulayabilirim?


18

Reklamlarımın tek bir ödeme ile kaldırılabilmesi için oyunuma "reklamsız" hizmet eklemek istiyorum. Bunu nasıl doğru şekilde uygulayabilirim?

Hizmetin cihazda yerel olarak ödendiği gerçeğini kaydedersem, kullanıcının bir şekilde uygulamanın verilerini silmesi durumunda tekrar ödeme yapması gerekir.


1
Sorunun ikinci kısmı çok geniş (Bayt'ın zaten düzenlediğini görüyorum); sorunun ilk kısmı belirsizdir. Bunun mantıklı mı, ahlaki mi yoksa etik olarak mı olduğunu soruyor musunuz? Yoksa servisin cihazda ödendiğini nasıl kaydedeceğinizi mi soruyorsunuz ?

1
Şimdilik sadece nasıl olduğunu sorduğunuzu varsayacağım, çünkü soruyu yorumlamanın uzaktan konudaki tek yolu bu.

Yanıtlar:


29

'Reklamları devre dışı bırak' satın alma işleminizi uygulamak için Google Play'in uygulama içi satın alma API'larını kullanırsanız, bu temel olarak sizin için yapılır. Kullanıcıların satın alabileceği sarf malzemesi olmayan bir ürün oluşturmak istersiniz . Sarf olmayan ürünler, esasen, kalıcı bir fayda veya kilidini temsil eder. Bu tür satın alımlar kullanıcı tarafından silinmiş / temiz / yeni telefonlara geri yüklenebilir, bu nedenle reklam devre dışı bırakılmalarını asla tekrar satın almaları gerekmez.

Bu sayfa , IAP API'sını oyununuzla entegre etme hakkında ayrıntılı talimatlar içermektedir. Adımlar aslında:

  • Kütüphaneyi projenize ekleyin ve bildirim dosyalarınızı güncelleyin.
  • IInAppBillingServiceBir servis bağlantısı üzerinden bağlanın .
  • Bu arayüz üzerinden uygun verileri servise gönderin ve alın getSkuDetails(mevcut ürünlerin listesini almak getBuyIntent, satın alma işlemine başlamak için, vb.).

Ayrıca, getPurchasesbir kullanıcının 'reklamları devre dışı bırak' öğesini satın alıp almadığını (ve öyleyse, reklamları gerçekten devre dışı bırakan) görmek için üzerinden test etmeniz gerekir .

Satın alınabilir gerçek 'reklamları devre dışı bırak' öğesini Google Play geliştirici konsolunuzdan oluşturursunuz.


Bekleyin, Google önceden bir uygulamanın "sarf malzemesi" IAP'si olup olmadığını biliyor mu? Bunu mağazada gerçekten ortaya koymalılar; "uygulama içi satın alımlar var" her şey anlamına gelebilir.
Random832

3
@ Random832 Hayır, sanmıyorum. Yalnızca bir ürünün abonelik olup olmadığını bilir. Aboneliği olmayan herhangi bir ürün için "consumePurchase" isteği gönderebilirsiniz , bu ürünün kendisi sarf malzemesi değildir. Sanırım teoride ikili dosyalarınızı taramaya çalışabilirler ve bu arayüze karşı aramalar arayabilirler, ama rahatsız olduklarından şüpheliyim.

1
Belki de IAP ve API'nin birbirlerinin anagramları olması tesadüf değildir.
ArtOfCode

IAP API telaffuz etmeye çalışırken kendi dilimi
büküyorum

10

Google Play'in araçlarını Josh'un cevabındaki gibi kullanmıyorsanız (ancak bu araçları kullanmanızı öneririm). Bu bilgileri kendiniz yönetmelisiniz.

Kullanıcının cihazında yerel olarak bir şey depolamaktan kaçınmak istersiniz. Kullanıcılar, reklamları cihaz başına veya yükleme başına kaldırmak için ödeme yapmak zorunda değildir.

Ödeme yapan kullanıcılarla bir veritabanı tutmanız gerekir. Lansman sonrasında (reklam kaldırma işlemini farklı bir cihazdan satın almaları durumunda) uygulamanız veritabanını kontrol eder, kullanıcı hesabı bulunursa reklamları söz konusu kurulum için kalıcı olarak devre dışı bırakırsınız. Kullanıcı hesabı bilgileri kullanıcıya, özellikle de reklam kaldırma işlemini satın almak için kullandıkları Google hesabına özgü olmalıdır.

Bir kullanıcı reklam kaldırma işlemini satın aldığında, hesap bilgilerini veritabanına ekler ve reklamlarını devre dışı bırakırsınız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.