iOS 应用程序每次启动时都要求输入密码
iOS app asks for password every time it is launched
我正在我的设备上测试一个新应用,今天,我开始集成 StoreKit 以进行应用内购买。
问题是每次我启动该应用程序时,它都会询问我的沙盒帐户密码。下面,您将找到有关该问题的一些详细信息。
- 我第一次启动该应用程序时,一切都按预期进行。完成应用内购买时没有问题(我的沙盒用户 - 我们称之为 testuser1@t.com -)。
- 停止应用程序,集成一个按钮"Restore purchases"。不幸的是,我忘记在完成时添加 "finishTransaction"(不确定这是否是问题所在)。
- 从现在开始,每次我启动应用程序时,它都会不断询问我 testuser1@t.com 的密码。
StoreKit 开始在不是 rootView 的视图中执行它的操作,所以我排除了我以编程方式投射错误...
那么,我之后做了什么?
- 已从设备中删除应用并重新安装(重启后)
- 已删除沙箱用户(并创建了一个新用户 - 比如说 testuser2@t.com -)。我成功使用了新帐户以获得新的 IAP。
- 清除了我设备上的设置
- 已从 iTunes Connect 中删除 IAP
问题依旧。请记住,要求的密码是 testuser1@t.com(第一个测试帐户!)
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)
}
我正在我的设备上测试一个新应用,今天,我开始集成 StoreKit 以进行应用内购买。
问题是每次我启动该应用程序时,它都会询问我的沙盒帐户密码。下面,您将找到有关该问题的一些详细信息。
- 我第一次启动该应用程序时,一切都按预期进行。完成应用内购买时没有问题(我的沙盒用户 - 我们称之为 testuser1@t.com -)。
- 停止应用程序,集成一个按钮"Restore purchases"。不幸的是,我忘记在完成时添加 "finishTransaction"(不确定这是否是问题所在)。
- 从现在开始,每次我启动应用程序时,它都会不断询问我 testuser1@t.com 的密码。
StoreKit 开始在不是 rootView 的视图中执行它的操作,所以我排除了我以编程方式投射错误...
那么,我之后做了什么?
- 已从设备中删除应用并重新安装(重启后)
- 已删除沙箱用户(并创建了一个新用户 - 比如说 testuser2@t.com -)。我成功使用了新帐户以获得新的 IAP。
- 清除了我设备上的设置
- 已从 iTunes Connect 中删除 IAP
问题依旧。请记住,要求的密码是 testuser1@t.com(第一个测试帐户!)
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)
}