Tag: 应用程序内购买

iOS应用程序Purcahse沙盒testing说我有错误的密码

我在itunesconnect中创build了一个Sandbox Tester帐户,并通过我在networking上注册的电子邮件validation了电子邮件地址。 经过validation,我试图在我的应用程序中购买Sandbox帐户中的某些内容,并提醒我更改密码。 所以我做了。 然后,我试着再次用我的应用程序购买新的密码,它说,苹果ID /密码不被识别。 我在这个过程中做了什么不正确的事情?

应用内购买自定义价格

我一直在寻找一段时间,但可能太明显,人们不会发表。 我想知道如果我可以把一个产品的dynamic价格。 我有一个送货申请,价格可能会随着距离而变化。 此外,它可以是一个非整数的价格,如$ 2,43。 可能吗? 另外,我无法在iTunes Connect上设定价格,我需要先进行审查? 提前感谢!

Swift,spritekit:在应用程序购买代码运行,什么都没有发生?

好吧,我在Swift工作,我只需要帮助。 我已经遵循了4个不同的教程,关于如何使用Swift在Sprite工具包中的应用程序购买实现,逐字复制代码,并没有什么是为我工作。 以下是我采取的步骤: 走进iTunes连接,并创build一个应用程序购买下我的应用程序的logging。 我在应用程序购买的产品ID是"GameOverSaveSavior" 在Xcode中,我将应用程序的应用程序购买function设置为ON ,确保将我的团队设置为我的帐户,并确保我的信息下的Bundle标识符已设置为ITunes Connect中我的应用程序的包标识符 在编写任何代码之前,我在我的GameScene.swift文件中import StoreKit 至于代码,这是我所做的: (1)在Gamescene.swift中,在didMoveToView函数的最后,我有: // Set IAPS if(SKPaymentQueue.canMakePayments()) { println("IAP is enabled, loading") var productID:NSSet = NSSet(objects: "GameOverSaveSavior") var request: SKProductsRequest = SKProductsRequest(productIdentifiers: productID as Set<NSObject>) request.delegate = self request.start() } else { println("please enable IAPS") } 当应用程序运行时输出"IAP is enabled, loading" 。 (2)在GameScene.swift中,在类内但在didMoveToView之外,我有所有的function和variables,其他人用于应用程序购买: var list = [SKProduct]() […]

从付费到免费w / IAP:防止双重收费

这是一个概念性的工作stream问题。 我正在使用应用内购买(FWIAP)将现有用户群中的应用转换为免费,以移除广告。 我试图避免的问题是让现有的付费客户更新应用程序,现在突然看到广告和侮辱/殴打“select”再次支付去除他们从来没有买过的广告。 幸运的是,我确实有持久数据( pData )的forms的面包屑,这将表明是否已经安装了应用程序。 所以我的想法是在决定是否继续显示广告之前,让新版本检查现有安装。 我预见到的一个问题是后来的更新,然后考虑到现在所有的第一代用户再次有资格获得广告,所以我不得不添加另一个持久性标志( pFlag )来识别两组用户,然后希望记住稍后更新(即第三代等),以检查pFlag而不是pData ,因为pData值在此之前已经很长时间了。 这似乎是一个很好的方法,还是有另一个已知的解决scheme吗?

应用内购买,SKProductsRequest返回0 – 产品仍在审查中

我已经按照教程: 介绍到应用程序内购买我想我已经完成了所有的事情如何显示。 但是,我的应用程序内购买仍然在iTunes连接“等待审查”。 当testing我的应用程序,我没有得到错误,我只是得到0产品返回给我。 我提交了应用程序,然后拒绝二进制文件。 我的产品是否必须先获得批准? 我正在使用开发资料,这是不正确的? 已经超过24小时,我不知道为什么他们不会显示。 我的应用程序还没有准备好,我只是想testing它们,以确保一切正常。

在应用程序购买最高限额

我听说苹果公司新近为应用程序内购买的产品提供了额外的10,000件商品(除原来的10000件商品外)。如果这是正确的,我该如何实现? 谢谢

在应用程序购买 – 消费品

我正在应用程序中购买应用程序。 根据要求,每次在我的应用程序中按“购买”button, 应购买产品 。 对于itunesconnect网站,在哪种types的我的产品将落在? 易耗品或非易耗品。 我很困惑select类别。 我已经阅读了一些文件,但仍然令人困惑。

iOS的IAP收据validation

我正在使用Apples IAP和StoreKit框架来购买订阅的客户端/服务器应用程序。 我们希望客户(iPhone或iPad)通过使用StoreKit框架的iTunes帐户与苹果进行初始订购,然后将收据传递给我们的服务器,这将validation它,然后更新用户帐户状态。 我们还希望服务器负责pipe理订阅的状态(检查自动更新,取消等)。这些都是使用iOS 7风格的appleReceipts,而不是当前已弃用的iOS 6风格的交易收据。 苹果公司的文件说,张贴到以下url,以validation沙箱中的收据以及收据和密码 https://sandbox.itunes.apple.com/verifyReceipt 到目前为止,所有事情都应该如此。 在那里,让我感到困惑的是在回应中。 苹果公司的文件说,应答应该有多达4个字段。 如果您正在validationiOS 7样式的应用收据,那么您只应该预期前两个。如果是iOS 6样式的订阅交易收据,那么您应该期望看到所有4个。 1)状态(0为有效,否则为一些错误代码) 2)收据(发送的收据的JSON表示) 3)latest_receipt(仅针对自动更新订阅的iOS 6样式事务回执返回,最近更新的基于64编码的事务回执。 4)latest_receipt_info(与JSON格式相同) 问题1:即使我正在validationiOS 7样式的应用收据,我也看到了所有4个。 文档说,不应该发生。 https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html#//apple_ref/doc/uid/TP40010573-CH104-SW1 问题2:我们希望通过使用客户在初次购买后通过的原始应用收据来轮询该API来维护用户订阅状态。 latest_receipt_info字段似乎包含不断更新的事务列表,而receipt字段是原始副本,没有更新的事务信息。 我的问题:似乎服务器可以获取更新事务信息的唯一方法是查看latest_receipt_info或latest_receipt字段,但根据文档,这些字段不应出现在响应中。 这是苹果文档中的错误吗? 或者,获取最新一组事务的唯一方法是让客户端在SKPayementTransactionObserver得到通知时发送更新的SKPayementTransactionObserver ? 编辑 – 根据下面的评论添加步骤和一些代码。 1)使用SKPaymentQueue购买autoRenewSubscription产品: SKMutablePayment *payment = [SKMutablePayment paymentWithProduct:product]; payment.applicationUsername = [self hashedValueForAccountName:[UserAccount sharedInstance].subscriberKey]; [[SKPaymentQueue defaultQueue] addPayment:payment]; 2)付款完成后,我通过SKPaymentTransactionObserver接到回电,并通过以下URL发送文件: NSURL *receiptURL = [[NSBundle mainBundle] appStoreReceiptURL]; 到我的远程服务器。 3)我正在使用下面的Python代码来validation收据 […]

更新的应用程序与新的显式应用程序ID,应用程序内购买。 SKProductsRequest返回产品的空清单

背景: 当前的待售版本的我的应用程序使用通配符应用程序ID,并且包ID很简单,不符合com.companyname.appname约定(它只是'appname')。 它使用的应用程序标识只是“bundleseed。*”forms,我相信在使用configuration文件进行签名时会导致“bundleseed.appname”。 (为什么?因为这个应用程序自苹果公司推荐显式应用程序ID之前2.x天开始,XCode引入了com.companyname约定之前)。 我在应用程序中添加应用程序内购买,这需要一个明确的应用程序ID。 我已按照技术问答QA1680中的说明从通配符应用程序ID更新为显式应用程序ID 。 结果是,我有一个新的显式应用程序ID的forms“newbundleseed.appname”,新的供应configuration文件用于签署应用程序指定了这一点。 info.plist中的包ID保持相同的“appname”。 问题: 当我从旧版本的顶部部署新的应用程序从XCode它看起来工作正常。 旧版应用程序实例被replace为新的应用程序,并且所有新function都已到位。 但是,当应用程序提交SKProductsRequest时,会产生一个空的产品列表。 如果我将新应用程序部署为全新安装(而不是复制旧版本),则一切按预期工作 – SKProductsRequest将生成完整的可用产品列表。 我也注意到,升级后的版本inheritance了旧版本的一些方面,这对我来说很陌生。 具体来说,旧版本的应用程序有一个default.png,新的应用程序还没有作为构build的一部分,但升级后的应用程序在加载时显示旧的default.png。 这就好像升级的应用程序是旧的和新的合并。 我主要关心的是,应用内购买将适用于我的升级用户。 我是否在显式应用程序ID方面做了错误的事情,或者这只是一个问题,因为我正在使用In App Purchase沙箱? 在这种情况下,我可以相信它会在发布时工作吗? 此外,任何洞察力为什么/如何新的应用程序不会看起来完全replace旧的应用程序包? 我唯一能想到的是,不是生成一个新的捆绑种子(详见QA1680),我应该在创build新的App ID时使用旧的捆绑种子。 即旧的应用程序ID是“oldbundleseed。*”,我目前的新的是“newbundleseed.appname”,也许它应该是“oldbundleseed.appname”。 但我不能这样做,因为configuration门户不会让我创build一个只有捆绑种子不同的应用程序ID。 如果这是我的问题,该怎么办? 联系苹果? TL / DR:一个现有的应用程序,使用新的显式应用程序ID来更新以支持IAP,除了SKProductRequests在应用程序升级时产生空的产品列表而不是产品清单时,它们会产生一个已填充的产品列表。

如何在新iTuneconnect中创build应用内购买testing用户?

我在itune连接中创build了一个testing用户。 用户创build成功。 也能够在手机苹果商店login。 但是,当我要在同一个用户的应用程序购买testing,我无法testing。 它总是显示错误“您input的Apple ID找不到或您的密码不正确,请重试”。 我不知道为什么会出现这个错误。 我的configuration文件和捆绑ID是相同的我的应用程序,并获取所有产品列表是在应用程序购买注册。 请告诉我,如果有任何新的点仍然留在新的itune连接。