17得票3回答
如何在使用自动续订应用内购买时恢复正确的交易?

这个问题涉及到自动续订的IAP,以及它们如何被恢复。这些链接:this和this都没有对我有所帮助。 在我的应用中,用户可以订阅1、6或12个月的“自动续订型应用内购买项目”(Auto-Renewable In-App Purchases)。当他们订阅时,交易收据会被发送到我的服务器,以便稍...

17得票7回答
检查用户是否取消了SKPaymentTransaction。

如何检查用户是否点击了取消按钮(无论是当被问及是否想要购买某物,还是在已经购买了此SKProduct但是否想要下载时)? 目前,我只在paymentQueue:updatedTransactions:方法中收到SKPaymentTransactionStateFailed,当用户点击取消按钮...

16得票2回答
应用程序如何响应延迟的SKPaymentTransaction?

我的应用程序中有应用内购买,而新版iOS 8中引入了“延迟”交易,部分在技术说明中有描述。 我理解它的作用,并且知道我不需要阻塞UI,需要更新UI以反映交易状态为延迟。但是,在方法-(void)transactionDeferred:(SKPaymentTransaction*)transa...

16得票4回答
如何使用非续订的应用内购买支持多个设备?

我正在开发一个包含非续订订阅IAP的iOS应用程序。苹果在他们的IAP概述中提供了以下信息:链接。 “您需要向用户拥有的所有设备提供非续订订阅。Store Kit不会自动将非续订订阅同步到所有设备上;您必须自行实现此基础结构。例如,大多数订阅由外部服务器提供;您的服务器需要实现一种机制来识别...

16得票2回答
当服务器端的收据验证失败时,我应该调用finishTransaction吗?

我使用服务器端收据验证。 当客户端的 - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions 被调用时,且transactionState为SKPaymentTra...

15得票1回答
交易续订在Transaction.all或Transaction.updates中丢失的StoreKit问题。

我在我的iOS应用程序中提供订阅服务。如果该应用程序运行在iOS 15或更高版本上,我将使用StoreKit 2来处理订阅的开始和续订。我的实现紧密遵循苹果的示例代码。 极少数用户(<1%)报告说他们的活动订阅未被识别,通常发生在续订后(新订阅似乎总是有效)。似乎没有任何StoreKit事务...

15得票2回答
Obj-C,Storekit restoreCompletedTransactions返回零个交易?

我在恢复已完成交易方面遇到了一些问题。[[SKPaymentQueue defaultQueue] restoreCompletedTransactions]; 我已经添加了在多个示例中提到的观察者,我尝试添加了paymentQueueRestoreCompletedTransactionsF...

15得票2回答
在应用内购买中,当交易失败时,我是否应该调用finishTransaction?

我正在为我的iOS应用程序编写应用内购买功能。我正在销售一些简单的消耗品(没有下载)。我基于这个教程/主题编写了我的代码: 如何在iOS应用程序中添加应用内购买? 然而,我注意到它与官方的苹果文档有冲突。 在这段代码中,无论出于什么原因交易失败,都会调用此代码 [[SKPaymentQueu...

15得票3回答
无法完成支付队列中未完成的交易

我的应用在IAP沙盒中进入了一些奇怪的状态...每次启动应用程序时,它都会要求特定测试用户的密码。我猜这是由于未完成的交易造成的。我真的想完成那笔交易,但这是不可能的。以下是一些背景信息和我为此所做的事情: 我已从itunesconnect中删除了该测试用户 应用程序启动后,我立即调用 [...

15得票1回答
iOS沙箱/测试账号退出应用后仍然要求登录的问题

我们正在尝试使用StoreKit实现简单的应用内购买(不确定是否与此有关),到目前为止一切顺利,但是我们遇到了一个特定的问题:当退出应用时,iOS会永久要求我们登录: 只有在使用沙盒或TestFlight账户登录时才会出现这种情况,但这非常令人烦恼。这背后是否有任何原因或者我们根...