问题标签 [storekit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4579 浏览

iphone - iPhone StoreKit 开发:无法创建测试用户?

我正在尝试了解如何使用新的 3.0 SDK 开发应用内商店......但我有点卡在我似乎无法创建测试帐户。iTunes Connect 常见问题解答指出“要为您的沙盒环境创建测试用户,请转到 iTunes Connect 的管理用户部分并选择应用内购买测试用户。您的测试用户将没有 iTunes Connect 访问权限。他们只能访问沙盒环境。”

...但是当我转到“管理用户”部分时,没有提到任何类型的“应用内购买测试用户”或如何制作。我错过了做些什么来实现它吗?

同一个常见问题解答的另一部分似乎表明我需要先在商店中安装付费应用程序?这就是我什至无法使用测试环境的原因吗?

0 投票
22 回答
30459 浏览

iphone - iPhone StoreKit - 无效的产品 ID

我正在尝试在沙盒环境中测试应用内购买。

为了测试代码,我做了以下事情:

  1. 在 iTunes Connect 的“管理用户”下创建了一个应用内购买测试用户帐户

  2. 在“管理您的应用内购买”下创建了一些应用内购买产品。我对产品 ID 使用了数字值和字母数字值。

  3. 将应用程序加载到 iPhone 上,转到 Settings->Store 并退出常规商店并进入在步骤 1 中创建的测试帐户

  4. 在 (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response 回调中设置断点

所有提交的产品 ID 都在response.invalidProductIdentifiers属性中。提交请求时,我首先尝试了在步骤 2 中创建的确切产品 ID。我还尝试在它们前面加上 Bundle ID:

我错过了一些明显的东西吗?任何帮助表示赞赏。

阿奇姆

0 投票
4 回答
3972 浏览

iphone - iPhone OS 3.0 中 StoreKit 的设计技巧?

我将在 iPhone 应用程序中实现 StoreKit,并想知道是否有任何经验可以指出使用 StoreKit 的任何陷阱或陷阱?

我知道 API 是新的 - 但我的应用程序中有一些高级内容我想要求用户付费,这似乎是一种理想的方式 - 而不是将他们引导到网站以单独支付订阅费用。

我还假设有关于如何在应用商店中列出应用程序的指南,以明确该应用程序可以免费安装 - 但您必须升级某些功能。

更新(来自评论):您无法将免费应用程序转换为付费应用程序 - 因此用户必须先以最低成本安装它,然后您才能使用 StoreKit API 对附加软件收费。

第二次更新:您现在可以在免费应用程序中使用 API - Apple 最近更改了规则


任何人都可以推荐一个使用 StoreKit API 的优秀应用程序,我可以在该应用程序上建模用户交互吗?

0 投票
6 回答
72911 浏览

php - 验证应用内购买的收据

我已经在应用程序购买中玩了几天,一切正常,直到我尝试使用应用程序商店验证收据,因为我不断返回无效状态。

我将收据数据传递到我的 PHP 服务器,然后从那里转发到应用商店,一旦我得到有效的响应,我打算将收据数据添加到我的数据库中。

商店工具包编程指南和类参考对于这个特定领域来说并没有什么用处,因为它们并没有真正给你任何例子,我确实找到了一篇有用的文章,它对我有所帮助,但仍然有问题。

基本上我想知道有收据验证工作的人是否愿意分享他们的代码,因为我无处可去。

谢谢

0 投票
2 回答
16670 浏览

objective-c - 使用 transactionReceipt 生成 JSON 对象

过去几天我一直在尝试测试我的第一个应用内购买 iphone 应用程序。不幸的是,我找不到与 iTunes 服务器对话以验证 transactionReceipt 的方法。

因为这是我第一次尝试使用这项技术,所以我选择直接从 iPhone 验证收据,而不是使用服务器支持。但是在尝试使用来自谷歌代码的 JSON api 创建的 JSON onbject 发送 POST 请求后,iTunes 总是返回一个奇怪的响应(而不是我等待的“status = 0”字符串)。

这是我用来验证收据的代码:

也许我忘记了请求标头中的某些内容,但我认为问题出在我用来创建 JSON 对象的方法上。

这是我将 JSON 对象添加到 HTTPBody 之前的样子:

我得到的回应:

完整响应 { exception = "java.lang.IllegalArgumentException: 尝试读取未加引号的字符串时属性列表解析失败。未找到允许的字符。行号:1,列:0。"; 状态 = 21002;}

非常感谢您的指导。

0 投票
5 回答
4253 浏览

iphone - Store Kit 交易失败

我正在尝试使用 iPhone 3.0 SDK 测试 Store Kit 事务。我的代码基于 Store Kit Programming Guide 中的示例代码,但我不断收到失败的交易(状态:SKPaymentTransactionStateFailed)。然而,事务的错误属性是 nil,所以这并不能说明情况。

当我尝试购买该产品时,我可以使用测试帐户登录并接受购买,但随后出现一个对话框,显示:

“您已经购买了这个,但尚未下载。点击确定立即下载。”

当我点击“确定”时,什么也没有发生。我的 transactionObserver 不再收到发送给它的任何消息。

0 投票
16 回答
55875 浏览

iphone - StoreKit In App Purchase 无效的产品标识符

我从SKProductsRequest.

我做了以下步骤:

  1. 在 iTunes Connect 的“管理用户”下创建了一个应用内购买测试用户帐户

  2. 在“管理您的应用内购买”下创建了一些应用内购买产品。

  3. 将应用程序加载到 iPhone 上,转到设置 → 商店并退出常规商店

  4. (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response回调中设置断点

所有提交的产品 ID 都在响应的invalidProductIdentifiers属性中。提交请求时,我尝试了在第 2 步中创建的产品 ID 以及那些以 Bundle ID 为前缀的 ID。

提前致谢,

拉古

0 投票
1 回答
1029 浏览

iphone - 从 iPhone 上的应用内购买交易中获取客户信息

Apple 在 iPhone 开发中心的介绍 Store Kit视频中明确指出,我们应该:

“在云中的服务器中保留TransactionID客户信息的副本。这样,如果客户错误地删除了您的应用程序,您就有了恢复机制。您可以在首次启动应用程序时检查您的服务器以获取记录为给定客户的购买量,并将该应用程序恢复到删除之前的状态。相信我,您的客户会很感激的!”

伟大的!现在,我还没有使用过应用内购买,但是在查看应用内购买编程指南时,尚不清楚 Store Kit 如何或何时向应用提供任何“客户信息”。所以,我的猜测是,我们需要为这些信息麻烦我们的客户,不管我们是否使用应用内购买,因为苹果没有让我们访问他们通讯录中包含这些有价值信息的 vCard。

我的假设正确吗?为了能够在应用内购买后从删除应用中恢复,我们需要从每个用户那里获取某种类型的唯一信息,以便在每次购买期间登录我们的服务器?

编辑:我们将考虑使用应用内购买的内置产品模型。

0 投票
3 回答
810 浏览

iphone - 应用内购买测试是否需要真实产品?

我想和我的测试用户一起测试应用内购买。然而,似乎我需要创建一个真正的产品并将其与一个真正的应用程序相关联。然后可以在 iTunes 中搜索该产品。如果我只是测试,我不希望在 iTunes 中搜索产品。任何人都可以对应用内购买测试体验的这方面有所了解吗?

0 投票
1 回答
6263 浏览

iphone - 如何提供 storekit 内容?

对于我的应用程序,我有足够的能力,它会要求确认并说明应用内购买,但我不知道如何在购买完成后启用该项目。

[[SKPaymentQueue defaultQueue] addPayment:payment];

这就是我到目前为止所拥有的

这是我要执行的代码