Geliştirici yükü geçmişten beri sahtekarlığı önleme ve satın alma işlemlerini doğru kullanıcıyla ilişkilendirme dahil olmak üzere çeşitli amaçlarla kullanılıyordu. Google Play Faturalandırma Kitaplığı'nın 2.2 ve üzeri sürümleriyle, daha önce geliştirici yükünden yararlanan amaçlanan kullanım alanları artık kitaplığın diğer bölümlerinde tam olarak desteklenmektedir.
Bu destek sayesinde Google Play Faturalandırma Kitaplığı'nın 2.2 sürümünden itibaren geliştirici yükünü kullanımdan kaldırdık. Geliştirici yüküyle ilişkili yöntemlerin desteği sürüm 2.2'de ve sürüm 3.0'da kaldırıldı. Uygulamanızın, kitaplığın önceki sürümleri veya AIDL kullanılarak yapılan satın alma işlemleri için geliştirici yükünü almaya devam edebileceğini unutmayın.
Değişikliklerin ayrıntılı listesi için Google Play Faturalandırma Kitaplığı 2.2 sürüm notlarına ve Google Play Faturalandırma Kitaplığı 3.0 sürüm notlarına bakın.
Satın alma işlemlerini doğrulama
Google, satın alma işlemlerinin gerçek olduğundan ve sahte veya tekrar oynatılmadığından emin olmak için satın alma jetonunun gerçek olduğunu doğrulamak amacıyla Google Play Developer API'leriyle birlikte satın alma jetonunu (Purchase
nesnesindeki getPurchaseToken()
yönteminden alınır) kullanmanızı önerir.
Daha fazla bilgi için Sahtekarlık ve kötüye kullanımla mücadele sayfasına göz atın.
Satın alma ilişkilendirmesi
Başta oyunlar olmak üzere birçok uygulama, satın alma işleminin, satın alma işlemini başlatan oyun içi karakter/avatar veya uygulama içi kullanıcı profiliyle doğru şekilde ilişkilendirildiğinden emin olmalıdır. Google Play Faturalandırma Kitaplığı 2.2'den başlayarak, uygulamanız satın alma iletişim kutusunu başlatırken kodu karartılmış hesap ve profil tanımlayıcılarını Google'a aktarabilir ve satın alma sırasında bunların geri döndürülmesini sağlayabilir.
BillingFlowParams
içindeki setObfuscatedAccountId()
ve setObfuscatedProfileId()
parametrelerini kullanıp Purchase
nesnesindeki getAccountIdentifiers()
yöntemini kullanarak alın.
Meta verileri bir satın alma işlemiyle ilişkilendirme
Google, bir satın alma işlemiyle ilgili meta verilerin, yönettiğiniz güvenli bir arka uç sunucusunda depolanmasını önerir. Bu satın alma meta verileri, Purchase
nesnesinde getPurchaseToken
yöntemi kullanılarak elde edilen satın alma jetonuyla ilişkilendirilmelidir. Bu veriler, başarılı bir satın alma işleminin ardından PurchasesUpdatedListener
çağrıldığında satın alma jetonunu ve meta verileri arka ucunuza iletip korunabilir.
Satın alma akışı kesintileri durumunda meta verilerin ilişkilendirildiğinden emin olmak için Google, satın alma iletişim kutusunu başlatmadan önce meta verileri arka uç sunucunuzda depolamanızı ve bunları kullanıcınızın hesap kimliği, satın alınan SKU ve geçerli zaman damgasıyla ilişkilendirmenizi önerir.
Satın alma akışı PurchasesUpdatedListener
çağrılmadan önce kesintiye uğrarsa uygulamanız devam ettirilip BillingClient.queryPurchasesAsync()
numarasını aradıktan sonra satın alma işlemini keşfeder.
Ardından, meta verileri aramak, meta verileri satın alma jetonuyla ilişkilendirmek ve satın alma işlemini gerçekleştirmeye devam etmek için Purchase
nesnesinin getPurchaseTime()
, getSku()
ve getPurchaseToken()
yöntemlerinden alınan değerleri arka uç sunucunuza gönderebilirsiniz. Başlangıçta depoladığınız zaman damgasının Purchase
nesnesinin getPurchaseTime()
nesnesindeki değerle tam olarak eşleşmeyeceğini unutmayın. Bu nedenle, bunları yaklaşık bir şekilde karşılaştırmanız gerekir. Örneğin, değerlerin birbirinden belirli bir zaman aralığı içinde olup olmadığını kontrol edebilirsiniz.