我一直在努力寻找这个问题,也有类似的问题,但找不到我的问题的答案。
问题是“[SKPaymentQueue canMakePayments]”总是失败。代码非常简单如下。
if ([SKPaymentQueue canMakePayments]) //
{
NSLog(@"able to make payments");
[[SKPaymentQueue defaultQueue] addTransactionObserver:g_custom_store_observer]; // Register the observer
SKMutablePayment *myPayment = [SKMutablePayment paymentWithProductIdentifier: strItemName];
myPayment.quantity = 2;
[[SKPaymentQueue defaultQueue] addPayment:myPayment];
}
else{
NSLog(@"not able to make it");
return KD_FALSE;
}
我想我在测试过程中遗漏了一些东西。我到目前为止所做的是
唯一不同于其他普通iPhone应用程序的是我的基于OpenGl的游戏,因此大部分代码都是用C ++编写的,与用ObjectiveC / C ++编写的iPhone平台特定内容连接。
因此上面的代码是从C ++模块调用的,并且还没有创建iOS特定的UIViewController。在我调用[SKPaymentQueue canMakePayments]之前我是否需要UIViewController?
我错过了什么吗?
提前致谢。
答案 0 :(得分:4)
我很惭愧和尴尬,这完全是我的错误......:$
我再次按照说明进行操作 http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/ (谢谢'特洛伊')但没有收获...... 我尝试撤销并重新颁发证书和配置文件,构建我的应用程序并将其上传到AppStore ..我浪费了几天。
最后我发现了问题所在。 :$
问题是我的iPad设置..(设置 - >一般 - >限制) 我记得很久以后我启用了限制,以避免孩子的错误购买商业用品......
对不起家伙这个烂摊子......:$