UnityIAP 简易内购过程中的坑

由于最近在看Unity的简易内购的提供方案,在集成了service之后可以省却集成Apple的StoreKit和Google Play相关的内购,实现简易的跨平台内购方案。便在业余时间尝试了一下。

然后就发现了一个非常神奇的坑。我按照官方的文档一步一步地做了所有的操作,但是却不明白为什么一直提示Purchase Failed,并且返回的原因是Reason Unknown。这岂不是太气人了,未知原因怎么查啊。。

最初以为是在Xcode中编译工程的时候没有开启In-App Purchase,但是最后开启了发现还是不行。。万念俱灰,就在一切将要放弃的时候,某和谐搜索引擎拯救了世界!

后来经过搜索发现,由于我集成的脚本是Unity官方例子的一个样例,它其中添加了很多类型的商品,但是我自己在iTunes Connnect中添加的商品其实只有一个,于是我把代码中的商品ID改成了只有一个,而且ID和iTunes Connect中的完全一致以后。。

奇迹发生了!竟然成功了!然后异常激动!!

这篇博客就做一个记录吧,相信遇到这种情况的开发者不止我一个人。由于国内这块的资料太少了,所以遇到问题非常难查。

另外默默地感慨一下,中国大陆的独立开发者真的是很艰难。像App Store和Google Play这样的平台的应用内支付完全不需要什么资质。但是对于国内的阿里巴巴和微信支付都是需要企业认证的。对于小团体来说,注册一个公司还是成本太高了,可是很多小团体还是想做很多没有那么商业化,但是同时又可以稍微带来一些物质回报的内容,但是这条路真的是越来越艰难了啊。。