问题标签 [skpaymenttransaction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3373 浏览

ios - 如何分配 skpayment 应用程序用户名

我们可以分配 skpayment 应用程序用户名吗?

应用内购买完成后,我得到了一个空的applicationUsername in theSKPayment。

如何为 赋值SKPayment applicationUsername

0 投票
1 回答
1007 浏览

ios - 从 SKTransaction iOS 获得一分钱成本

嗨,我正在尝试在我的 iOS 应用程序中与我的 IAP 进行一些服务器集成。我发送到服务器的参数需要:transaction_ID、product_ID 和 pennyCost。

前两个很容易弄清楚,但我找不到成本。我确实有一些 NSData 用于收据,但我不知道如何将其转换为我可以使用的任何形式。到目前为止,这是我的代码。

transaction.payment.product.pennyCost 行无效。

任何帮助都会很棒,谢谢!

0 投票
1 回答
4002 浏览

ios - SKPaymentQueue updatedTransactions 未被调用

我收到“此应用内购买已被购买,它将免费恢复”但未调用委托 updatedTransactions 并且没有任何反应,IAP 不执行。

我已经实现了恢复购买,它工作正常,但是我如何防止用户再次购买非消耗品?为什么不调用委托 updatedTransactions(SKPaymentTransactionState.Restored)?

即使在删除并重新安装应用程序后进行购买也会显示此弹出窗口。

这是我的代码。如果我做错了什么,请告诉我。谢谢

0 投票
1 回答
106 浏览

ios - 无法在 iOS 中获取有效的 IAP 产品

我正在尝试为我的应用添加应用内购买,

我在 iTunes-Connect 中添加了一个产品,它的状态是 Ready to Submit now。

但我无法获得有效的产品功能

产品数组总是空的,我错过了什么步骤吗?

由于某些原因,我的税务信息未完成,是否存在问题?

0 投票
1 回答
1162 浏览

swift - SKPaymentQueue 未完成自动续订订阅产品的 SKPaymentTransaction

我正在尝试实施自动更新订阅产品。问题是SKPaymentQueue不能通过SKPaymentTransaction调用完成SKPaymentQueue.defaultQueue().finishTransaction(transaction)

如上所述,InpaymentQueue:updatedTransactions:方法queue.finishTransaction(transaction)被调用。通常,交易已完成,不会再停留。

但是当我再次运行该应用程序时,该交易仍未完成。顺便说一句,我在 AppDelegate 中设置了事务观察器,如下所示。因此,当应用程序启动时,剩余的事务开始通过调用来处理paymentQueue:updatedTransactions:。这不像我的预期。

你们对这个问题有任何想法吗?有SKPaymentQueue.defaultQueue().finishTransaction(transaction)没有没有完成交易的案例?

0 投票
1 回答
374 浏览

swift - 强制 SKPaymentQueue 在后台线程上运行

在我的 AppDelegate 中,我运行以下命令:

当我运行“购买恢复”并立即终止应用程序时,在重新启动后用户界面卡住了处理所有购买所需的时间(我测试了其中的许多,每次我都用苹果验证收据- 卡住 UI 大约需要一分钟!!)

我认为可能是事务队列启动被阻塞..所以我将代码更改为:

它没有帮助....

到目前为止 - 我开始怀疑队列在我的主线程上运行......这对我来说没有意义......

我调试了 - 并且......支付处理正在“队列:com.apple.main-thread(串行)”上运行。我假设这也是用户 GUI 线程(否则 GUI 没有理由卡住......)。

所以...

我能做些什么??有什么解决方案我可以处理收据并做出响应......?

谢谢!

0 投票
1 回答
272 浏览

ios - 使用 SKPayment 未完成交易

我还没有在我的应用程序中完成交易,所以当我尝试使用此 ID 在应用程序内购买时,我收到了以下消息:

此应用内购买已购买,将免费恢复

但是当我按下确定按钮时,委托方法永远不会被调用。

我怎样才能捕捉到一些事件来完成这个交易?

0 投票
0 回答
1062 浏览

ios - restoreCompletedTransactions 在 xcode 8 swift 3 中不起作用

我在 AppStore 上有应用程序,恢复购买工作正常(构建是使用 Swift 2.2 完成的)。但是,我刚刚切换到 Swift 3 和 xCode 8,restoreCompletedTransactions 停止工作。未调用 paymentQueue 并且 paymentQueueRestoreCompletedTransactionsFinished 在 iTuneStore 上为真正的 appleId 用户返回队列中的 0 个事务。但是,当我切换到沙盒测试帐户时,它可以工作(即使在 Swift 3 中)。这是代码...有谁知道xCode 8中是否对此有一些更改?

0 投票
1 回答
1681 浏览

ios - 无法完成购买非续订订阅交易

我想在我的应用程序中实现年度订阅,我使用StoreKit. 问题是,当我点击subscriptionButton. 一个应用程序抛出错误:'NSInvalidArgumentException', reason: 'Cannot finish a purchasing transaction'. 我被困在这个地方,无法解决我的问题。因此,我的paymentQueue代码如下所示:

你有什么建议,我该如何解决?

0 投票
1 回答
595 浏览

ios - SKPayment / SKPaymentQueue:无法连接到 iTunes Store

我正在使用 IAP(自动续订订阅)构建应用程序。工作流程似乎工作正常,IPA 已创建(在 iTunes 连接中),沙盒用户也已登录。IAP 产品 ID 也是正确的,但我收到错误(来自SKPaymentTransaction):

Error Domain=SKErrorDomain Code=0 "Cannot connect to iTunes Store"

在出现该错误之前,我会看到显示价格、订阅期限和订阅名称的购买屏幕。所以连接和产品ID是正确的。

我使用沙盒用户登录:屏幕显示[Environment: Sandbox].

我使用的是真实设备(iPhone 7 和 iPhone 5)。该错误发生在设备和模拟器上(确定在模拟器上?)。

有任何想法吗?