原地址:http://zengwu3915.blog.163.com/blog/static/27834897201375105236580?suggestedreading

发了几天时间在网上折腾了几天,终于把App内购给弄好了。分享一下个人经验

一、 在iTunesConnect中创建内购的App,然后为这个App设置一些产品(付费道具等)
打开iTunesConnect网站https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa。成功登录后进入管理页面
 

选择“Manage Your Apps”进入应用管理页面,并点击“Add New App”新建一个项目

新建App项目可以参考前面的苹果开发——向App Store提交应用,这里我们不做真实的提交,只进行到应用的状态为"Prepare

for Upload"就可以了。这里的Bundle ID 一定要与项目的info.plist中的Bundle ID保持一致,不然会内购不成功或到别人账户里去了。

选择“Manage In-App Purchases”进入产品管理页面。选择”Create New“来创建新的产品(付费道具)。

这里会出现五个项,如果你只看到一个”Free Subscription",这个时候,请先去完成“Contracts, Tax, and Banking”的资料填写,可以参考苹果开发——设置iTunes Connect中的Contracts, Tax, and Banking
类型说明:
1. Consumable 消耗品: 每次下载都需要付费, 游戏中的收付道具或充值一般都用这个类型来实现
2. Non-consumable 非消耗品: 仅需要付费一次, 游戏中如果有什么收费补丁或收费地图什么的,可以用这个
3. Auto-Renewable Subscriptions 自动订阅:允许用户购买一个持续时间更新的东西,并自动续期,游戏中少见,一般杂志订阅会用到

4. Free Subscription 免费订阅: 这个你懂的

5. Non-Renewing Subscription 非自动订况:
 
我们做游戏收费道具,选择第一个“Consumable”,之后设置一些产品的信息

Reference Name: 付费产品名称,这个自己看看就行了

Product ID:你产品的唯一id,通常格式是com.xx.xx,但它可以是任何形式(中文和特殊符号除久),不要求以程序的App ID作为前缀

Price Tier:选择价格,这里你选择价格后会出现各种货币对应的价格对照表。

Add Language:添加产品名称与描述语言,这里可以设置不同语言不同的描述。产品的名称会在购买时显示给玩家
Screenshot 截图:展示你产品的截图,测试时可以不用管。
 
一路Save保存回到“Manage In-App Purchases”页面中,你会看到我们新建的产品,同样的方法,你也可以创建多个产品。只要保证Product ID 不同就行,其他的随意。
做sandbox测试时,In-App Purchases设置到这里就可以了。但真正上线时还得继续设置下去。
这里没有上传截图的状态是“Waiting for Screenshot”,我们上传一个截图后状态变为"Ready to Submit",为什么不是“Submit for Review”

这里我们的App的状态是“Prepare for Upload”,在这我们需要将“In-App Purchases”加入到你的App应用中,这一步只能在App状态为“Ready for upload”之前去做,否则”In-App Purchase“就没法submit了。

如果产品都设置好了,点Done回到”App Information"中,确定为App状态为“Prepare for Upload”时,点“view Details”

在下面的In-App Purchases中,选择“Edit”

  选择App中所需要加入的产品

“Save” 保存,确定产品信息添加无误后,可以点下面的“Ready to Upload Binary”。

 

这后,App 应用的状态就是“Waiting for Upload",回过去再看产品时,状态变为了"Waiting for Review"

到此,App iTunes Connect上所有的设置都完成,直等上传二进制文件发布等待审核通过了。传说内购产品的审核在App审核通过之后才开始。
 
二、申请测试账号。利用sandbox测试模式模拟App Store购买流程
回到iTunes Connect主页面中,选择”Manage Users“ 然后选择”Test User“ 然后点”Add New User“,创建几个测试用的账号就可以了
记住账号和密码哈,记不住就删掉重新建 娃哈哈~(切记:不能用于真正的AppStore中使用此账号,不仅不能用,而且一旦AppStore发现后果你懂得~)

苹果开发——App内购以及验证store的收据(一)的更多相关文章

  1. 苹果开发——App内购以及验证store的收据(二)

    原地址:http://zengwu3915.blog.163.com/blog/static/2783489720137605156966?suggestedreading 三. 客户端使用Store ...

  2. ios 苹果内购订单验证 --- php实现

    验证函数: function appleVerify($receipt_data,$orderId = 0) { /* * 21000 App Store不能读取你提供的JSON对象 * 21002 ...

  3. 苹果内购服务器验证之receipt返回多组in_app思考

    最近有部分用户反映,苹果内购充值失败,经过测试总结有几个关键点出现问题 1.app购买成功苹果没有返回票据,属于票据遗漏(取决于苹果服务器的响应状况),只能客户端进行监听刷新等处理 2.app连续购买 ...

  4. 苹果APP内购客户付款成功,没收到相应虚拟产品的解决办法

    一.引导用户走申请苹果的退款 1.告知用户新版本可以使用支付宝.微信支付,更划算 2.苹果可申请90天以内的退款,一般情况申请后48小时内就有反馈. 参考链接 https://jingyan.baid ...

  5. iOS开发系列——内购、GameCenter、iCloud、Passbook系统服务开发汇总

    社交 Social 现在很多应用都内置“社交分享”功能,可以将看到的新闻.博客.广告等内容分享到微博.微信.QQ.空间等,其实从iOS6.0开始苹果官方就内置了Social.framework专门来实 ...

  6. iOS APP内购

    看到网上文章一大把,看了这个觉得挺不错的,谢谢 iOS大全 公众平台; 原文:http://mp.weixin.qq.com/s?__biz=MzAxMzE2Mjc2Ng==&mid=2652 ...

  7. php苹果内购订单验证

    /** * 21000 App Store不能读取你提供的JSON对象 * 21002 receipt-data域的数据有问题 * 21003 receipt无法通过验证 * 21004 提供的sha ...

  8. c++ boost 苹果内购 IAP验证

    // 1111.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" #include <cstdlib> #include <i ...

  9. ios 苹果内购订单验证 --- nodejs实现

    实现代码 function IosPlayVerify(data,orderid,cb) { itunesPost(data,function (error,responseData) { if (e ...

随机推荐

  1. Spring 什么是 IOC 控制反转 ?什么是依赖注入?spring的用处 好处 为什么要用

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha Spring是一个开源的控制反转(Inversion of Control ,IoC)和 ...

  2. 【BZOJ 2216】【POI 2011】Lightning Conductor

    http://www.lydsy.com/JudgeOnline/problem.php?id=2216 学习了一下决策单调性. 这道题决策单调性比较明显,不详细证了. 对于一个决策i,如果在i之前的 ...

  3. codevs 1392 合并傻子

    1392 合并傻子 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond       题目描述 Description 在一个园形操场的四周站着N个傻子,现要将傻子有 ...

  4. leetcode 587. Erect the Fence 凸包的计算

    leetcode.587.Erect the Fence 凸包问题.好像是我在leetcode做的第一个凸包问题吧. 第一次做,涉及到的东西还是蛮多的.有一个东西很重要,就是已知一个点和一个矢量,求这 ...

  5. Visual Studio删除所有的注释和空行

    visual studio用"查找替换"来删掉源代码中所有//方式的纯注释和空行 注意:包括/// <summary>这样的XML注释也都删掉了. 步骤1/2(删除注释 ...

  6. Linux系统中/dev/mtd与/dev/mtdblock的区别,即MTD字符设备和块设备的区别

    转:http://www.crifan.com/linux_system_in__dev__mtd_and__dev__mtdblock_distinction_character_devices_a ...

  7. Eclipse修改svn地址

    版权声明:本文为博主原创文章,未经博主允许不得转载. Eclipse修改svn地址 SVN地址变更后 需要重定向 步骤有3 : 1 )   打开eclipse中SVN资源库 在Eclipse中选择Wi ...

  8. Android之获取内外部存储器的容量

    先来了解一下存储卡的相关知识: 我们新购买的磁盘或SD卡在使用之前,要让操作系统认得它,须先写入一些磁性的记号到磁盘上的每一扇区,便可在该操作系统下取用磁盘上的数据,这个过程就是格式化. 格式化可以直 ...

  9. [转]MySQL Explain

    Mysql Explain 详解 一.语法 explain < table_name > 例如: explain select * from t3 where id=3952602; 二. ...

  10. cocos2d-x:将iOS项目编译成Andriod项目

    来源:http://www.cnblogs.com/angzn/p/3328049.html 一.Android 环境搭建 1.安装Andriod-NDK(Native Development Kit ...