Apple那边的IAP整理

来源:互联网 发布:淘宝卖家 延长收货 编辑:程序博客网 时间:2024/05/01 20:27
我打算先实现消耗品,然后再进行云端存储实现消耗品。否则Apple极有可能把我的产品拒绝。


   这两天开始实现IAP,在实现之前对IAP应该有一个大体的认识。在这里我就开始阐述一下IAP的林林总总。


  1.IAP提供产品描述  


  2.购买产品


  满足上述两个条件IAP才能正常工作。


  创建及提取产品描述:


  1.创建唯一的AppID


  2.生成及安装新的provisioning profile文件


  3.在XCode中更新Bundle ID和Code signing profile


  4.在iTunes Connect中提交程序的metadata


  5.在iTunes Connect中提交程序的二进制码


  6.为IAP添加新产品


  7.编写提取产品描述的代码


  8.等几个小时。


  看样子过程不是太繁琐。我们来看看具体过程。


1.创建AppID


也就是之前遇到的7DC89RZKLY.com.EpicGames.AFewDaysLeft 但不能包含“*”通配符http://developer.apple.com/iphone


若没有在developer portal中AppIDs中创建一个选择New App ID


不能编辑或是删除就得AppID,所以只能想一个新名字。然后configure连接选择"Enable In AppPurchase"


2.创建新的Provisioning Profile文件


创建了AppID之后需要一个新的provisioning profile。


进入Provisioning部分,确保在Development下,New Profile。


加入刚才我写的AppID,然后在Actions条目下Pending,然后点击Development标签刷新。


Download下载新的profile文件


将Profile文件拖入Dock中XCode图标上进行安装。


想在硬盘上保存Provisioning Profile文件可以如下:


在XCode中选择Window>Organizer


选择左边的Provisioning Profile


Ctrl-按下profile>Reveal in Finder


将Profile拖入到Profile Finder窗口。


3.更新XCode设置


  在XCode中安装了Profile文件后,需要对该Provisioning Profile进行编辑。


  1.编辑.plist文件使其Bundle ID与App ID匹配。忽略ID部分字母数字序列,像上边的我只需要写成com.EpicGames.AFewDaysLeft即可。


  2.编辑项目的target信息使用心得provisioning profile


  project>Edit Active Target


  Build便签


  选取需要的confiuration,通常为Debug


  在Code Signing Identity中选择新的provisioning profile


  在Code Signing Identity之下的杭忠选择新的provisioning profile。


4.添加我的游戏


  如果游戏已经发表到AppStore可以忽略这里,因为我用UDN的方式已经完成了提交。  


  在将产品添加到iTunes Connect之前,必须添加产品所需的程序。如果程序没有100%提交无妨,可以提交部分数据。最后提交真实程序。


  只有SKU和Version版本是不可修改。


  1.登陆到http://developer.apple.com/iphone


  2.进入iTunes Connect,然后Manage Your Apps    


  3.点击左上角Add New App


  4.填写一切信息,当要求二进制码时,选择稍后上传选项


5.提交二进制码


  1.生成AppStore发布版程序


  点击iphone Developer Portal中左上方的Distribution标签,选择Prepare App标签。选择蓝色指示


  获取iPhone发行许可证


  创建下载AppStore发型所需的iPhone Distribution Provisioning Profile


  在XCode中创建生成程序的发行版


  2.在iTunes Connect中进入程序页


  3.选择Upload Binary


  4.上传.Zip压缩程序


  5.若程序还没有完成100%以进行审核,在iTunes Connect中程序首页点击Reject Binary。程序的状态将会更新为Developer Rejected


  所以在没有做完游戏之前苹果不会审核的,然后可以在任何时候提交新版本使状态为Developer Rejected,这样非常便于测试。


6.添加产品


  完成以上内容进入IAP产品提交环节,这可是非常重要的步骤。


  1.登录到http://developer.apple.com/iphone


  2.进入iTunes Connect主页


  3.点击Manage Your in App Purchases


  4.Create New


  5.选择自己的程序


  6.填写产品列表


  Reference Name:参考名称,即产品的名称。例如BounceWeapon Upgrade。此名称不允许编制,不会出现在AppStore中


  Product ID:产品ID。产品唯一的ID。例如com.EpicGames.AFewDaysLeft.BounceWeaponUpgrade.他可以是任何形式不需要以AppID为前缀


  Type:可以想来你的产品有哪些类型。对于游戏产品的血瓶,武器购买和循环反复那种。


     Non-Consumable:仅需消耗一次,例如玩家购买了枪支。以后就会一直拥有该枪。或者是购买解锁关卡。


     Consumable:药瓶之类的购买,复活之类


       Subscription:预定


  Price Tier:产品的定价。


  Cleared for Sale:等待销售,要选此项。否则测试时会发生非法产品ID错误。


  Language to Add:选一项。下列两项中将出现。


    Displayed name显示名称:用户看到的产品名称。例如BounceWeapon Upgrade


        Description:对产品的描述。此处输入的文本将于DisplayedName及Price一起在代码中提取SKProduct时出现


  ScreenShot:截屏。展示产品截图。展示你产品的截屏。尽管屏幕上会显示“提交截屏会触发产品审核过程”之类的文字(个人拙见,这是非常糟糕的设计),你还是可以安全地提交截屏而不会使产品 进入审核过程。存储后,选择“Submit with app binary” (随程序二进制码一起提交)选项。是产品与程序二进制绑定在一起,所以在你最后正式提交100%完成的程序二进制码时,产品也会随之提交。


  点击Save完成吧。


7.编写代码


  这里进入unrealscript打开microsaction写,同时不要忘了在config文件中写产品列表。


8.等一些时间


  产品进入iTunes Connect得有一段时间让Apple准备好沙盒环境。一般会在24个小时之内完成。


9.购买产品


  现在应该获取了SKProoduct描述


  1.编写代码支持事物:在你的游戏中写购买的执行过程


  2.在iTunes Connect中添加程序测试用户:在iTunes Connect中创建测试用户,可以用测试账号购买而不被Apple收取费用。


    登陆到http://developer.apple.com/iphone


    进入iTunes Connect


    选择iTunes Connect首页Manage Users


    选择In App Purchase Test User


    选择Add New User


    填入用户信息,所有信息不必都合法。建议选用虚拟的email地址及简短的密码


    save


  3.在设备中登陆iTunes Store账号


    在测试前先退出iTunes Store,打开Setting App,点Store,点Sign Out


  4.购买测试


    运行设备


    进行购买


    当程序提示输入用户名与密码是,输入测试用户信息


    若使用同一账户进行购买,系统提示已经购买了此产品。按“Yes”可以再次下载此产品。
0 0