Tag: 在应用程序内购买

如何检测并validation自动续订订阅的续订?

所以我已经为我的应用程序设置了自动续订订阅,期限为1个月,这相当于沙箱中的5分钟左右。 在我订阅的客户端应用程序中,将收据发送到我的服务器,得到validation,并且在我的数据库中logging了该用户已订阅的logging。 我的问题是如何检查这个订阅是否被更新? 我已经阅读了文档,不知道该怎么办。 这是我到目前为止: 发送到我的服务器的初始收据validation状态为0 ,很好。 我也得到latest_receipt ,我在我的数据库中取代最旧的收据。 6分钟后,当我尝试validationlatest_receipt ,我得到状态21006 (过期的收据),这: { receipt: { original_purchase_date_pst: '2013-08-06 11:58:04 America/Los_Angeles', unique_identifier: '————', original_transaction_id: '———-', expires_date: '1376129825000', transaction_id: '————', quantity: '1', product_id: 'subscription', item_id: '——–', bid: 'com.——–', unique_vendor_identifier: '———', web_order_line_item_id: '———', bvrs: '2.0', expires_date_formatted: '2013-08-10 10:17:05 Etc/GMT', purchase_date: '2013-08-10 10:12:05 Etc/GMT', purchase_date_ms: '1376129525000', expires_date_formatted_pst: '2013-08-10 03:17:05 America/Los_Angeles', […]

iOS应用程序购买:苹果的评论家会testing现场或沙箱环境吗?

我使用“应用内付款”销售游戏内耗材。 成功付款后,我将付款收据转发至我的后端,后者validationiTunes付款后端的收据。 这在沙箱环境中完美地工作。 现在我提交了我的应用程序,以便它可以被苹果公司批准,并在App Store上发布。 当然,我确定我的后端将validation付款收据与itunes后端的生产环境,因为我希望苹果的人在生产模式下testing应用程序。 但是,该应用程序被拒绝。 因为我被告知购买我的耗材不起作用(由于收据无效而被我的后端拒绝)。 检查我的日志后,我看到3尝试购买。 我解码使用的收据,看看,所有这些都是“环境”=“沙盒”。 这是否意味着苹果在沙箱模式下testing提交的应用程序? 那将是疯狂的! 我应该在我的生产环境中允许沙箱支付还是什么? 有关这个的任何事实?

使用单一产品在Swift中进行应用内购买

是否有一个简单的方法来实现一个单一的产品快速的应用程序内购买? 我想要一个触发应用程序内购买的button,如[ad-removal]或[unlock-premium-content] 我无法理解它的完整逻辑。 我试图从[Techotopia] http://www.techotopia.com/index.php/An_iOS_7_In-App_Purchase_Tutorial中关注和翻译本教程 但这是我第一次使用StoreKit框架,也使用Swift。 我只是想知道与Swift StoreKit框架的应用内购买交易的逻辑。 谢谢!

在iOS上的应用程序内部销售东西

我听说在应用程序中开发市场需要采取一些预防措施。 我正在开发一个足球俱乐部的申请。 我想整合一种市场来出售体育场座位。 有人告诉我,如果我直接将它集成到应用程序中(使用Obj-C,与PHP页面通信),Apple将拒绝该应用程序。 据他介绍,我应该把用户redirect到一个外部网页(例如使用Safari应用程序)来实现交易。 苹果公司并没有真正交stream这种信息。 你知道吗?

在应用程序内购买沙箱环境循环

我有我的生产应用程序中的应用程序内购买工作,我正在添加一个新的项目出售。 但是,我无法在沙盒环境中testing新的应用内购买。 我的购买显示正确。 恢复工作。 但是,如果我购买购买,那么我提示login。 我使用一个testing用户帐户login(我有4个工作大约一个月前,是活跃的)。 然后我被引导到AppStore,在那里我得到一个对话框popup说:[环境:沙箱]取消或继续。 当我继续时,系统提示我input苹果ID密码,然后按确定。 它说“加载…”几秒钟,然后popup窗口再次说[环境沙箱]取消/继续。 我经历了大约5次。 我已经尝试过以前用于testing的帐户,我已经创build了一个新用户,我尝试在两个月前都使用过的多个设备上进行testing。 我已重置我的设备。 与此同时,我已经能够testing出我的function,并且没问题 – 但是在发布更新之前我不能做我想要做的端到端的购买/testing。 有没有人见过类似的东西? 我正在寻找任何build议。 谢谢。

SKProductsRequest返回0个产品的原因是什么?

我试图设置IAP,但打电话来检索产品使用SKProductsRequest SKProductsResponse数组我的委托内有一个计数为0.这是我的清单: testing产品已添加到iTunes连接 产品的包ID与应用包ID相匹配(并且不使用通配符) SKProductRequest中设置的产品标识符与iTunes连接上创build的产品相匹配 自从在iTunes连接上创build产品后,我等了好几个小时 configuration文件启用IAP 遵循各种教程中的所有步骤,例如http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/等 从设备删除应用程序,重新启动Xcode,重build等。 关于为什么提取的产品数量为零的任何其他build议? 我不相信这会是一个编码问题,但是无论如何, … NSSet *productIdentifiers = [NSSet setWithObjects:@"redacted", nil]; self.productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers]; self.productsRequest.delegate = self; [self.productsRequest start]; … – (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response { NSArray *products = response.products; NSLog(@"Product count: %d", [products count]); for (SKProduct *product in products) { NSLog(@"Product: %@ %@ %f", product.productIdentifier, […]

无法使用设备上的沙箱testing用户login

试图做一些在应用程序内购买testing,所以我创build了一个沙盒testingitunesconnect …但是当我试图以我的设备上的用户login,我得到一个错误: Itunes帐户创build不允许 Apple ID目前无法在iTunes商店中使用。 请稍后再试。 如果我input的帐户的密码错误,我得到一个帐户拒绝,所以它不是一个密码错字..这是发生在我创build的每个testing帐户…任何人都有一个线索到底是怎么回事..我找不到任何地方的任何信息。

iOS在应用程序购买:testing一个真正的购买,而不提交给苹果

我在我的iOS应用程序中实现了应用程序购买,我希望在向苹果提交这个新版本之前做一个真正的testing(而不是沙箱)。当然,当前版本的应用程序(在App Store中)已经通过产品So ,我使用Ad Hoc分发configuration文件归档应用程序,并为Ad Hoc部署生成IPA文件。 但是当我通过Testflight在我的设备上安装应用程序时,我发现该应用程序在沙箱环境中! 在将应用程序提交到App Store之前是否有办法“真正”购买?

在应用程序购买没有恢复button导致拒绝

我正在执行一个应用程序在使用非易耗品的应用程序购买,它被苹果拒绝,原因是: 我们发现您的应用提供了可以恢复的应用内购买,但不包含“还原”function,以允许用户恢复以前购买的应用内购买。 要恢复以前购买的应用程序内购买产品,提供“恢复”button并在点击“恢复”button时启动恢复过程将是适当的。 有关恢复交易和validation商店收据的更多信息,请参阅 没有链接可以参考,我已经实现了: – (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions 与SKPaymentTransactionStateRestored情况。 但我没有执行: `restoreCompletedTransactions` or `paymentQueueRestoreCompletedTransactionsFinished` 这些方法是否需要批准购买应用程序,或者确切的问题是什么。 谢谢

在应用程序购买后,应用程序在启动时崩溃。 产品识别=无?

我有几个用户报告说,尝试在应用程序内购买应用程序现在崩溃在启动。 我已经要求他们删除并重新安装那些没有工作的应用程序,并试图要求他们进入飞机模式,以阻止任何没有工作的networking通信。 我无法在我的设备上复制错误,我的应用程序购买在沙箱和生产模式下都能很好地完成。 我的想法是,不知何故,他们的交易收到了一个零产品标识导致启动崩溃,但我不知道什么事情观察员方法在应用程序启动时被调用,我可以解决他们的问题。 有没有办法“清除”交易队列,或者在启动时testing零产品标识符,并允许这些用户至less再次运行应用程序? 我使用下面的代码做了数百次的应用程序购买,这只是最近开始发生。 应用程序启动时调用哪个助手方法? 在AppDelegate.m中 [[SKPaymentQueue defaultQueue] addTransactionObserver:[MovieClockIAPHelper sharedHelper]]; 在应用帮手代码中: – (id)initWithProductIdentifiers:(NSSet *)productIdentifiers { if ((self = [super init])) { // Store product identifiers _productIdentifiers = [productIdentifiers retain]; // Check for previously purchased products NSMutableSet * purchasedProducts = [NSMutableSet set]; for (NSString * productIdentifier in _productIdentifiers) { BOOL productPurchased = [[NSUserDefaults standardUserDefaults] […]