Cocos creater 1.4.0 anysdk ios 接入步骤分享

第一次接入anysdk,而且还是ios,一路走来,得到了不少热心网友的帮助,在此,谢谢 anysdk的技术支持隔壁老王(没错,万能的隔壁老王),在此,特意分享一下
##准备工作
证书申请,iTunes后台设置,请参考博客 http://www.jianshu.com/p/61d1b4c33f5f
###1. anysdk账号,并且后台添加游戏,配置商品数据


在文档中已经说明了这一点: http://docs.anysdk.com/faq/ios-sdk-params/ ,第二条的意思就是这里的商品配置要和iTunes的后台应用内购买数据映射好

配置后的界面如下:

###2.准备工作做好之后,下边就是在游戏内添加anysdk的支付代码

anysdk官网提供的文档: http://docs.anysdk.com/integration/creator-integration/
这里我要吐槽一下文档的这里

var iap_plugin = agent.getIAPPlugin(); 

这个angent是什么玩意?后来才知道,少了一行代码

var anent = anysdk.agentManager;

其他的地方按照文档来,应该没有什么大问题
###3.creater 构建xcode工程,并对xcode工程进行修改,特别注意,一定要删除mac的那个targets,否则,会出现生成的ipa包崩端的问题,这个注意事项,anysdk的文档上也有提到,然后就是证书, boundle id这块一定要仔细检查



###4.生成打包xcode工程
接入AppleStore用到了应用内支付,所以这里特别的说一下这个, 使用anysdk提供的工具,对游戏进行配置管理,这个按照文档上的来,应该也没有啥问题

在这一步选择creater构建出来的ios工程,勾选渠道列表,然后打包

然后会在原工程目录下看到另外一个xcode工程

这个工程就是最终生成ipa的真正工程

5. 使用TestFlight测试

http://www.jianshu.com/p/684e4b56b99a
请参考这个教程,感觉testFlight蛮好用的,赞一个,如果支付测试成功,就可以在anysdk的后台查询到ok的订单

##问题1.creater构建的工程没有任何问题,使用anysdk打包的xcode工程,程序运行起来就断点挂掉
解决办法:xcode工程有多个targets,请删除多余的targets

当启动起来的时候,程序突然断了下来


##问题2:使用anysdk生成的xcode工程真机调试购买商品,anysdk 的 log显示

msg: Invalid Item Error

这种情况,请仔细检查:
A.第一步的anysdk后台商品配置是否和iTunes商品配置映射一致, 购买的商品ID是否存在
B.Xcode工程的Boundle ID 是否后台iTunes后台一致
C.一定要用真机测试,模拟器不行
D.iTunes后台的这个是否是Paid Application 类型的合同, 我就是坑在这个地方

##问题3: App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app’s Info.plist file.
按照log提示,说是要把info.plist中的某一项设置为true,但是检查之后发现已经是true了,为啥还是提示这个https的问题,后来问题了anysdk的隔壁老王,原来是anysdk的问题,具体原因是因为苹果的HTTPS政策.
解决方案,删除这个Python脚本

#好啦,教程就到此为止,有啥问题,欢迎留言,对接成功只是开始,还有后续工作要做,苦逼撸码去了

4赞

这位朋友也遇到了这个问题,将anysdk生成的xcode工程删除多余的targets即可
http://forum.cocos.com/t/cocos-creator-1-3-1-anysdk-ios/42376

隔壁老王在此感谢楼主长文分享:laughing:

感谢分享,请问下如果非消耗类的restore如何解决

不明白你遇到了什么问题,选择内购项目的时候选择非消耗类的就好啦

谢谢你秒速回复 :)
有时候审批,非消耗类物品会被要求添加一个重置购买功能。想问下,这个能否用anysdk来实现?

按照我的理解,非消耗物品指的是类似vip,月卡这样的功能,你可能指的是购买的VIP,月卡这样的有时间限制,比如有效期一个月,这样的话,其实就是游戏的逻辑了,不知道我理解的对不对

我指的是比如去广告和关卡解锁类的,当玩家换了一个设备时候。苹果要求你能用重置功能恢复同一个app store下的玩家购买

没有遇到过,单机游戏没有账号怎么确定玩家的购买状况?

发送请求到app store,看有没购买凭证

CocosAnalytics ==> Please init SDK first!,出现了这个问题。不知道怎么回事

我也遇到这个问题了 您怎么解决的呢