OGeek|极客世界-中国程序员成长平台

标题: iOS 应用程序每次启动时都会要求输入密码 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 11:05
标题: iOS 应用程序每次启动时都会要求输入密码

我正在我的设备上测试一个新应用,今天,我开始集成 StoreKit 以进行应用内购买。

问题是每次我启动应用程序时,它都会询问我的沙盒帐户密码。在下文中,您将找到有关该问题的一些详细信息。

  1. 我第一次启动该应用时,一切正常。完成应用内购买时没有问题(使用我的沙盒用户 - 我们称之为 [email protected] -)。
  2. 停止应用,集成了“恢复购买”按钮。不幸的是,我忘记在完成时添加“finishTransaction”(不确定这是否是问题所在)。
  3. 从现在开始,每次我启动应用程序时,它都会不断要求我输入 [email protected] 的密码。

StoreKit 开始在不是 rootView 的 View 中执行它的工作,所以我排除了我以编程方式转换错误...

那么,我后来做了什么?

  1. 从设备中删除应用并重新安装(重启后)
  2. 已删除沙盒用户(并创建了一个新用户 - 比如说 [email protected] -)。我成功使用了新帐户以获得新的 IAP。
  3. 清除我设备上的设置
  4. 从 iTunes Connect 中删除 IAP

问题仍然存在。请记住,要求的密码是 [email protected](第一个测试帐户!)



Best Answer-推荐答案


Stopped the app, integrated a button "Restore purchases". Unfortunately, I forgot to add "finishTransaction" at completition (not sure if this could be the problem)

确实是这个问题!

Store Kit 将始终要求您重新验证队列中是否还有交易。要摆脱这些事务,只需调用:

for transaction in SKPaymentQueue.defaultQueue().transactions {
    SKPaymentQueue.defaultQueue().finishTransaction(transaction)
}

关于iOS 应用程序每次启动时都会要求输入密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36957038/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4