InAppPurchase在删除并重新安装应用程序后停止接收productRequest响应
EDIT3:解决
inAppPurchase不适用于越狱设备! (至less是沙箱testing)
编辑2:现在我知道为什么响应没有通过:这是iPhone上的networking故障。 当networking连接启动但没有通过任何数据时,productRequest将不会得到响应。
同时我仍然收到一个无效的产品ID。 任何帮助?
编辑:更新:尝试添加新的testing用户帐户,并使用它们(和反复删除/重新安装应用程序,我现在得到无效的产品…)有什么不对? less了什么东西?
我试图在AppPurchase系统中实施,这是一个痛苦!
继续得到无效的产品ID的我经历了以下列表 :
[已检查]您是否为应用ID启用了应用内购买?
[检查]你有没有检查Cleared for sale for your product?
[已检查]您是否提交(并可能拒绝)您的应用程序二进制文件?
[已检查]您的项目的.plist软件包ID是否与您的应用程序ID匹配?
[检查]您是否为新的应用程序ID生成并安装了新的设置configuration文件?
[检查]您是否使用这个新的configuration文件将项目configuration为代码签名?
[检查]你正在build设的iPhone OS 3.0或以上?
[CHECKED]在制作SKProductRequest时是否使用了完整的产品ID?
[CHECKED – 一周现在]从iTunes产品添加到iTunes Connect以来,您是否等了几个小时?
[已检查 – 收到的付款]您的银行信息是否在iTunes Connect上处于活动状态? (通过Mark)
[这是问题出现的地方]您是否尝试从设备上删除应用程序并重新安装? (通过Hector,S3B,Alex O,Joe和Alberto)
—->现在代表似乎没有工作…. ?? 我没有得到我的@“didReceiveResponse”在控制台上,但我得到了@“点击和处理”(代码如下)
@implementation InAppHandler - (void)requestProUpgradeProductData { NSLog(@"clicked and handling"); NSSet *productIdentifiers = [NSSet setWithObject:@"pastedFromiTunesConnect"]; productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers]; productsRequest.delegate = self; [productsRequest start]; // we will release the request object in the delegate callback } #pragma mark - #pragma mark SKProductsRequestDelegate methods - (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response { NSLog(@"didReceiveResponse"); NSArray *products = response.products; proUpgradeProduct = [products count] == 1 ? [[products objectAtIndex:0] retain] : nil; if (proUpgradeProduct) { NSLog(@"Product title: %@" , proUpgradeProduct.localizedTitle); NSLog(@"Product description: %@" , proUpgradeProduct.localizedDescription); NSLog(@"Product price: %@" , proUpgradeProduct.price); NSLog(@"Product id: %@" , proUpgradeProduct.productIdentifier); } for (NSString *invalidProductId in response.invalidProductIdentifiers) { NSLog(@"Invalid product id: %@" , invalidProductId); } // finally release the reqest we alloc/init'ed in requestProUpgradeProductData [productsRequest release]; [[NSNotificationCenter defaultCenter] postNotificationName:kInAppPurchaseManagerProductsFetchedNotification object:self userInfo:nil]; } @end
任何人都得到这个? 谢谢!
inAppPurchase在某些越狱设备上不起作用(似乎可能与AppSync有关)! (沙盒testing不起作用)
InAppPurchase适用于越狱设备! 你只需要从你的JailBreak设备删除AppSync直到testing。