美文网首页IAP项目相关iOS学习笔记
iOS 内购IAP 2017年最新填坑

iOS 内购IAP 2017年最新填坑

作者: mysteryemm | 来源:发表于2017-01-01 23:34 被阅读3659次

时间如白驹过隙,一晃又是一年。
  本打算效仿某些知名人士写个年终总结,总结过去、展望未来,发篇辞旧迎新的“深度好文”。随后一想,还是算了吧。一是文采有限,高质量文章写不来;二是毕竟还没到那个level。
  对于总结?我想说:有些事情不必说、不能说也无需说,放在心里,时间久了,自然就成了故事。
  对于展望?我想说:如果真打算完成某些计划、实现某些目标,不必声张,只管默默地努力就好。


回到本文主题,最近项目在集成IAP功能,开始之前,浏览了Apple的官方文档,也看了大量的国内教程,推荐这篇博客,写得很详细,按照教程一步步操作即可。然而,虽然参阅了很多资料,但是对于第一次没啥经验的我,还是会踩坑。遇到一个主要的问题就是,请求商品时,返回的商品ID是无效,我一直在纠结这个问题:
Why are my product identifiers being returned in the invalidProductIdentifiers array?
于是又翻阅了Apple文档,当我看到与** invalidProductIdentifiers**相关的讲解时,真的是人生又充满了希望。苹果给的解释如下:

Invalidate.png

  共八种情况可能导致该问题的发生(其中倒数第二条只针对非消耗型商品,而本人项目是消耗型商品,所以可忽略该条)。大概意思就是说:

  1. 使用了带有通配符(*)的App ID。(这个问题很好排查,去ITC看一眼即可)
  2. 最近提交的二进制文件被拒或者自己撤回。(修改App为准备提交状态即可,最好在ITC删除被拒的二进制文件,不上传二进制文件也可测试IAP)
  3. 没有清除ITC上在出售的IAP商品。
  4. 没有使用与App ID相关联的描述文件来签名App。
  5. 你可能更改了商品,但是还没有在AppStore服务器生效。(大概会等几个小时吧,具体不是很清楚)
  6. 还没完成所有的金融需求。(我最初的理解是:协议、税务和银行业务没有填写完整,也许是我理解错了->_->,接着往下看,一会还会Block到此处)
  7. 针对非消耗型商品,本人没仔细研究,感兴趣的童鞋可以点这里了解
  8. ITC上的商品ID和代码里的不一致。(对比一下即可排查)

协议、税务和银行业务,我已经填写完整并提交审核,只不过status显示为:processing,所以按我当时的理解,上面的第六条情况也排除了,另外的七种情况也排除了。但是商品ID仍旧是无效的,导致返回的product数量为0。
  只好翻阅官方文档并Google,但是并没有得到一个比较肯定的答案,甚至看到一个博客说,即使status == processing也不影响IAP测试,于是,我真特么信了。直到今天晚上(2017-01-01),协议、税务和银行业务的状态才审核通过(2016-12-28填写的),status变为Contract In Effect,商品请求成功,IAP测试成功。Block(@"上面的第6条");
  所以,IAP可以测试的必要条件之一:Contract In Effect。

相关文章

  • iOS 内购IAP 2017年最新填坑

    时间如白驹过隙,一晃又是一年。本打算效仿某些知名人士写个年终总结,总结过去、展望未来,发篇辞旧迎新的“深度好文”。...

  • 应用内购(In-App Purchase)常见问题解答

    应用内购(In-App Purchase)常见问题解答iOS的应用内购买 iAP 坑 iOS内购你看我就够了(一)...

  • iOS 内购 IAP

    1. iOS内购IAP(一) —— 基础配置篇(一)2. iOS内购IAP(二) —— 工程实践(一)3. iOS...

  • ios内购IAP相关内容

    ios内购IAP相关内容 iOS IAP应用内购详细步骤和问题总结指南 - 简书https://www.jians...

  • ruby实现ios和google内购

    一、ios 和 google 内购 ios IAP二次验证 IAP(In App purchase):App和Ap...

  • 苹果内购(IAP)填坑记

    前言 目前有很多关于iOS内购帖子及开源项目,但是没有一个相对合适自己项目的,所以就多研究下.主要还是因为苹果的I...

  • iAP 的一些简介

    iAP 的小指南 in-App Purchase 内购的缩写为 iAP。是 iOS 自带的一种应用内数字产品的支...

  • ios 经典面试案例 (一)

    1、iOS iAP内购审核可能失败的问题## Guideline 3.1.1 - Business - Payme...

  • Ios内购iap

    最近游戏项目需要上线,需要集成Ios内购 1:首先来谈谈遇到的坑 1)首先我们需要对苹果开发账号里进行配置(这里不...

  • iOS内购(iap)

    通过苹果应用程序商店有三种主要赚钱的方式: 1.直接收费(我想天朝的大多数人是不会购买的)2.广告 iAd Fra...

网友评论

  • df7fa75b0524:博主你好,协议税务和银行业务那里我们通过了,沙盒测试可以获取产品信息,但是上线后无法获取到产品信息了,请问下是什么原因呢
  • d23a7a220c12:先退后付,全网最低百分之20佣,VX:tianyoualong 友情提示,不要自己尝试退,一旦失败后续非常难成功了
  • d23a7a220c12:先退后付,全网最低百分之20佣,VX:tianyoualong 友情提示,不要自己尝试退,一旦失败后续非常难成功了,而且也不是充多少就退多少,具体要看你的消费情况
    d23a7a220c12:请看仔细了
  • weicyNO_1:大神想请问一下。我新添加了一个内购项目。如果项目中想获取这个项目用不用再次提交新版本。现在版本中模拟器跑真实环境能请求到数据。appstore中下载的请求不到产品。是什么原因?必须提交新版本吗?如果必须提交新版本中,新版本中没有添加内狗项目是不是不用添加
    辉_行者孙:您好,请问您的问题解决了吗? 如果之前版本已经集成内购,增加新的内购项目,需要更新版本吗?
    weicyNO_1:@心董儿 我是这么做的,后台返回产品id,我直接调用产品ID。别的都不变。我之前是分别提交的新版本包和内购项目。提交时没有注意点击添加内购买项目。现在两个都已经审核通过。现在该怎么办
    mysteryemm:@weicy00线上版本中没有内购相关代码是不行的,需要将相关代码添加到项目中然后更新版本
  • c8a7438509d7:职业代退,,342043530 不要密码, 成功收费
  • c8a7438509d7:职业代退,,342043530 不要密码, 成功收费
  • 承接iOS各类手游退款:接一切难度ios手游内购退款 先退再付 V: ios00tk
  • 洁简:是的,真是巧了,同样时间填,同样时间过,,以后还会有很多坑,
    mysteryemm:@洁简 哈哈:smile:

本文标题:iOS 内购IAP 2017年最新填坑

本文链接:https://www.haomeiwen.com/subject/umiivttx.html