2016-03-30 14 views
1

Uygulamamda yalnızca abonelik için ödediği kullanıcılar için gösterilecek öğeler var. Kullanıcı, e-posta ve şifre ile uygulamaya giriş yapabilir ve çıkış yapabilir ve aynı cihazda farklı kullanıcı oturum açabilir.Aynı Apple hesabı ancak uygulamadaki farklı kullanıcı hesabı IAP'yi devre dışı bırakın

Sorunum, telefondaki Apple kimliğinin hala aynı olmasıdır. Böylece farklı kullanıcı oturum açtığında, hiçbir şey ödemediği halde satın alma işlemini geri yükleyebilirdi.

Bu yüzden sorum benim nasıl düzeltebilirim? Apple hesabını özel hesabıma nasıl bağlarım? Ya da en azından bir şekilde IAP'yi geri yüklemeye çalışırken bu Apple hesabının zaten bu aboneliğe sahip olduğunu kontrol edin, ancak farklı kullanıcı giriş yaptı. Diğer uygulamalar bunu nasıl yapıyor? Teşekkürler

Düzenleme: Uygulamamda Otomatik Yenileme aboneliğini kullanmak istiyorum ve sadece özel hesap sistemime nasıl bağlanacağımı bilmiyorum.

+0

Apple'ın bu uygulama ile bir uygulamayı reddedeceğini düşünüyorum. Uygulama İçi Satın Alma İşlemlerinde AppleID'lere bağlı olması ve kullanıcıların UİSA içeriğine erişebilmesinden önce giriş yapmanız gerekmemektedir. Sadece 17.2 kılavuzu nedeniyle reddedilen (şimdi kabul edildi) bir kaç uygulamamız vardı: https://developer.apple.com/app-store/review/guidelines/ – r3c0d3

+0

Aşağıda açıklanan. Ancak, özel olarak e-posta kullanmadık, daha ziyade "kullanıcı adı" nı kullandık. İstedikleri takdirde e-postalarını alabilirlerdi. Uygulamayı kullanmadan önce bir giriş yapmak için gerekliydi. –

cevap

5

Bir kullanıcı bir IAP yaptığında, satın alma işlemini yapmak için Apple kimliğini bilmezsiniz. Bununla birlikte, bileceğiniz şey, satın alma işlemindeki işlem kimliğidir. Orijinal satın alma işleminin kimliğini özel hesabınızla depolamak istediğiniz şey.

Bir kullanıcı geri yüklediğinde, SKPaymentTransaction'ın orijinalTransaction'ın transactionIdentifier öğesinin özel hesapla eşleşip eşleşmediğini belirlersiniz. Değilse, bunun farklı bir kullanıcı olduğunu varsayabilirsiniz. Burada bu konuda daha fazla bilgi bulabilirsiniz: makbuz orijinal işlem kimliği olarak adlandırılan bir alan içerdiğini

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Restoring.html

Not. Orijinal işlem kimliğini izlemek için abonelikler için kullanacağınız şey budur. Otomatik olarak her yenilediğinizde, otomatik yenileme için yeni bir işlem kimliği oluşturulur. Makbuz aslında tüm satın alımları içerecektir.

Sunucunuzda, özgün işlem kimliğini ve potansiyel olarak makbuzu kaydetmek isteyebilirsiniz. Esasen buradaki mağazanız ne kadar fazla metadasa olursa olsun, herhangi bir çift kontrol işlemi yapmanız gerekiyorsa daha iyi olacaktır.

İlgili konular