Geliştirici yükü

Geliştirici yükü geçmişte sahtekarlığı önleme ve satın alma işlemlerini doğru kullanıcıya ilişkilendirme gibi çeşitli amaçlarla kullanılmıştır. Google Play Faturalandırma Kitaplığı'nın 2.2 ve sonraki sürümlerinde, daha önce geliştirici yüküne dayanan amaçlanan kullanım alanları artık kitaplığın diğer bölümlerinde tam olarak desteklenmektedir.

Bu destek sağlandığından, Google Play Faturalandırma Kitaplığı'nın 2.2 sürümünden itibaren geliştirici yükü desteği sonlandırıldı. Geliştirici yükü ile ilişkili yöntemler 2.2 sürümünde kullanımdan kaldırıldı ve 3.0 sürümünde 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ü almaya devam edebileceğini unutmayın.

Değişikliklerin ayrıntılı listesini Google Play Faturalandırma Kitaplığı 2.2 sürüm notları ve Google Play Faturalandırma Kitaplığı 3.0 sürüm notları'nda bulabilirsiniz.

Satın alma işlemlerini doğrulama

Google, satın alma işlemlerinin orijinal olduğundan ve sahte veya yeniden oynatılmadığından emin olmak için Google Play Developer API'leri ile birlikte satın alma jetonunu (Purchase nesnesinde getPurchaseToken() yönteminden elde edilir) kullanmanızı önerir. Daha fazla bilgi için Sahtekarlıkla ve kötüye kullanımla mücadele başlıklı makaleyi inceleyin.

Satın alma ilişkilendirmesi

Özellikle oyunlar olmak üzere birçok uygulamanın, 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şkilendirilmesini sağlaması gerekir. Google Play Faturalandırma Kitaplığı 2.2'den itibaren uygulamanız, satın alma iletişim kutusunu başlatırken kodu karartılmış hesap ve profil tanımlayıcılarını Google'a iletebilir ve satın alma işlemini alırken bu tanımlayıcıları döndürebilir.

BillingFlowParams nesnesinde setObfuscatedAccountId() ve setObfuscatedProfileId() parametrelerini kullanın ve Purchase nesnesinde getAccountIdentifiers() yöntemini kullanarak bu parametreleri alın.

Meta verileri bir satın alma işlemiyle ilişkilendirme

Google, satın alma işlemiyle ilgili meta verileri, yönettiğiniz güvenli bir arka uç sunucusunda saklamanızı önerir. Bu satın alma meta verileri, Purchase objesindeki getPurchaseToken yöntemi kullanılarak elde edilen satın alma jetonuyla ilişkilendirilmelidir. Bu veriler, başarılı bir satın alma işleminden sonra PurchasesUpdatedListener işleviniz çağrıldığında satın alma jetonu ve meta veriler arka uç sunucunuza iletilerek kalıcı hale getirilebilir.

Satın alma akışında kesinti olması durumunda meta verilerin ilişkilendirilmesini sağlamak için Google, satın alma iletişim kutusunu başlatmadan önce meta verileri arka uç sunucunuzda saklamayı ve kullanıcınızın hesap kimliği, satın alınan SKU ve mevcut zaman damgasıyla ilişkilendirmeyi önerir.

Satın alma akışı, PurchasesUpdatedListener çağrılmadan önce kesintiye uğrarsa uygulamanız devam edip BillingClient.queryPurchasesAsync() çağrısını yaptığında 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 işlemeye devam etmek için Purchase nesnesinin getPurchaseTime(), getSku() ve getPurchaseToken() yöntemlerinden alınan değerleri arka uç sunucunuza gönderebilirsiniz. İlk olarak depoladığınız zaman damgasının, Purchase nesnesinin getPurchaseTime() değerine tam olarak eşleşmeyeceğini unutmayın. Bu nedenle, bu değerleri yaklaşık olarak karşılaştırmanız gerekir. Örneğin, değerlerin belirli bir zaman aralığında olup olmadığını kontrol edebilirsiniz.