草庐IT

SKPaymentQueue

全部标签

ios - 在应用程序购买中 - 应用程序有时会崩溃

我已经在互联网上搜索了好几天,但找不到解决我问题的方法。我创建了一个应用程序,希望您通过应用程序内购买删除广告。我的问题是,当我点击“BuyProduct”按钮时,应用程序有时会崩溃。然后,我在行[[SKPaymentQueuedefaultQueue]addPayment:payment];之后收到错误消息“Thread1:EXC_BAD_ACCESS(code=1,address=0x16e6f6980)”。这是我的PurchasedViewController的.h:​#import#import@interfacePurchasedViewController2:UIViewC

ios - 使用 SKPayment 未完成交易

我还没有在我的应用程序中完成交易,所以当我尝试使用这个ID购买应用程序内时,我收到了这条消息:thisinapppurchasehasalreadybeenboughtitwillberestoredforfree但是当我按下确定按钮时,委托(delegate)方法从未被调用。-(void)paymentQueue:(SKPaymentQueue*)queueupdatedTransactions:(NSArray*)transactions{}-(void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue

ios - "Sign In to iTunes Store"对话框弹出,甚至在我开始在 StoreKit 中付款之前

当我尝试移动到使用StoreKit和应用内购买的ViewController时,它会自动弹出一个“登录iTunesStore”对话框以前进到应用内购买,尽管我还没有开始付款。是什么导致了这个弹出窗口?Xcode不会放置任何与对话框相关的日志。如何禁用该对话框?我使用我的测试帐户来测试我的应用内购买。我首先退出了帐户。然后我重新运行我的应用程序以再次确认我的购买,但即使我已经注销该帐户,它也会继续显示与测试帐户的对话框。我不明白为什么它仍然继续使用已注销的帐户。那么显示对话框的确切方法是什么?我从我的iPhone上删除了该应用程序并重新运行该应用程序,但它仍然继续弹出对话框...或者测试

ios - 如何实现多消耗品内购

我已经成功实现了一种消费品,但我不知道实现多种消费品。我想添加更多产品标识符,例如com.lalala.20batteries、com.lalala.30batteries谁能给我一些指导这是我的单一消费品代码@interfaceViewController()@end@implementationViewController#defineProductIdentifier@"com.lalala.10batteries"-(IBAction)taps10batteries{NSLog(@"Userrequeststoget10batteries");if([SKPaymentQueu

ios - 调用SKPaymentQueue restoreCompletedTransactions,无响应

这里的用例是用户从未购买过我的应用内购买但点击了“恢复”按钮。我想让用户知道恢复失败,因为没有任何东西可以恢复。问题是我没有收到任何事件。所以我不知道发生了什么事。当我的用户点击我界面中的恢复按钮时,我调用SKPaymentQueue.default().restoreCompletedTransactions然而,在那之后什么也没有发生。我希望调用我的SKPaymentTransactionObserverpaymentQueue(_:updatedTransactions:),但事实并非如此。我尝试实现paymentQueue(_:restoreCompletedTransacti

iphone - 在 App Purchase SKPaymentQueue finishTransaction 中不起作用

我正在iOSsdk中的应用程序购买项目中工作。我已经准备了应用程序购买类,用于从应用程序商店购买应用程序,并启用项目的内部内容。但是,我的问题是SKPaymentQueue没有完成我的类。这里的代码我的应用内购买类(class):-(void)purchase{[[SKPaymentQueuedefaultQueue]removeTransactionObserver:self];SKPayment*payment=[SKPaymentpaymentWithProductIdentifier:@"com.test"];[[SKPaymentQueuedefaultQueue]addTr

iPhone - 应用内购买还原产品提示登录提醒两次

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。我正在为非消耗品提供恢复功能。当我单击“还原”时,它会提示登录警报,我使用现有的AppleId登录,输入用户ID和密码后点击确定,然后再次提示登录警报。为什么输入用户详细信息后再次提示?编辑:恢复流程代码:-(void)RestorePurchasedItems{[[SKPaymentQueuedefaultQueue]addTransactionObse

ios - IAP 恢复自定义交易

我是iOS的新手,我想知道是否有可能指定用户想要恢复哪个已完成的交易?现在我正在使用:[[SKPaymentQueuedefaultQueue]restoreCompletedTransactions];而且我在那里找不到任何东西可以准确地告诉我要恢复哪个事务。谢谢! 最佳答案 您走在正确的轨道上。添加[[SKPaymentQueuedefaultQueue]addTransactionObserver:self];[[SKPaymentQueuedefaultQueue]restoreCompletedTransactions];

iphone - 应用内购买错误的恢复按钮

我在我的应用中恢复应用内购买时遇到问题我已经在我的项目中应用了这行代码:[[SKPaymentQueuedefaultQueue]addTransactionObserver:self];[[SKPaymentQueuedefaultQueue]restoreCompletedTransactions];但是它调用了这个函数-(void)paymentQueue:(SKPaymentQueue*)queuerestoreCompletedTransactionsFailedWithError:(NSError*)error{NSLog(@"error");}我必须做什么才能避免出现此错

ios - SKPaymentQueue : What happens if I never call finishTransaction:?

我的应用程序将允许用户通过应用程序内购买升级到专业版功能。我正在用我自己的服务器验证收据数据,如果确认从我的服务器返回,我调用finishTransaction:如果验证失败(可能不是因为盗版企图)并且我没有调用finishTransaction:会发生什么?它会无限期地留在队列中吗? 最佳答案 如果FinishTransaction没有被调用,我总是发现在某些时候我会出现奇怪的行为。最好的选择是在StandardUserDefaults等中设置一个设置,指示“我买了这个但失败了”,然后调用FinishTransaction。然后,