在应用内购买期间发出观察相同警报视图的问题

时间:2012-08-16 08:39:40

标签: ios in-app-purchase inappsettings

我有一个车速表应用程序,通过将它们添加到应用内购买中启用了2个功能。一切正常,我跟着http://www.raywenderlich.com/2797/introduction-to-in-app-purchases

要启用的两个功能都是非耗材。问题是,当我测试这个并添加测试帐户和密码时,我一直得到相同的警报视图 - “你已经购买了它但它还没有下载。点击即可立即下载”

[环境:沙箱]

为什么我一直在获得相同的警报视图?该功能只是为了启用HUD功能并删除广告;所以无需从服务器下载。而且我无法弄清楚交易是否完成,因为它甚至没有调用完成交易方法,只是提供相同的警报。

2 个答案:

答案 0 :(得分:1)

我浏览本教程并观察此警报视图。我不认为这是任何问题,因为您可能已经在应用商店中设置了测试帐户。如果您已经购买了此商品,Apple商店会通知您,如果您已经运行了应用程序并多次测试购买功能,那么您可能会这样做。这实际上是苹果商店完成的部分,所以你没有任何处理。

您应该在此警报后收到交易已完成的通知。确保您已添加此方法:

 [[SKPaymentQueue defaultQueue] addTransactionObserver:[InAppRageIAPHelper sharedHelper]];

在您的应用委托的 didFinishLaunchingWithOptions 方法中

答案 1 :(得分:0)

在购买商品时使用不同的商品ID:

-(void)buyCoinPack_1
{
          SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:self.currentProductId_1]]; 

            request.delegate = self;  
            [request start]; 
}


-(void)buyCoinPack_2
{
          SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:self.currentProductId_2]]; 

            request.delegate = self;  
            [request start]; 
}