iOS应用内购基本步骤及问题

公司最近让做一个iOS内购的demo,贴出大致的过程

首先准备一个99$的苹果开发者账号,299$不能使用应用内购

首先登录苹果开发者中心,创建app ID,开启应用内购的功能

https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action

进入iTunes connect:

https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa

登录后,进入,确认你的信息是否填写完整,填写后的图

当然,我是让公司人填写的,至于步骤我就不知道了,反正就是一些电话和银行卡之类的

next

 新建一个app 

填写

name:应用的名称

version:开发的时候版本要和这里对应,我写的0.0.1

sku:一般写bundle id,com.公司英文.应用名称英文

bundleid:选择在开发者中心创建的app id,app id和bundle id是一样的嘛

弱弱的说一句,创建了笔者没有找到删除app的链接,如果只做测试,可以试着用公司已有项目,不保证不出差错,谨慎

点击进去,填写该填写的信息吧,必须填的都填一下,点击submit for review,红色的就该填,偷懒,以后可以改的

next:

笔者的截图,对应网上盗了一张别人的图

消耗性项目,添加

添加后,开始写代码,很多内容简写,并不详细,下面是注意事项给copy了

如果不成功,请严格检查下面的内容:

  • 您是否在iOS Dev Center中打开了对应应用AppID的In-App Purchases功能?登陆iOS Dev Center的Certificates, Identifiers & Profiles下,在Identifiers中找到正在开发的App,In-App Purchase一项应当显示Enabled(如果使用Xcode5,可以直接在Xcode的Capabilities页面中打开In-App Purchases)。
  • 您是否在iTunes Connect中注册了您的IAP项目,并将其设为Cleared for Sale?
  • 您的plist中的Bundle identifier的内容是否和您的AppID一致?
  • 您是否正确填写了Version(CFBundleVersion)和Build(CFBuildNumber)两个数字?两者缺一不可。
  • 您用代码向Apple申请售卖物品列表时是否使用了完整的在iTC注册的Product ID?(使用在IAP管理中内购项目的Product ID一栏中的字符串)
  • 您是否在打开IAP以后重新生成过包含IAP许可的provisioning profile?
  • 你是否重新导入了新的包含IAP的provisioning profile?建议在Organizer中先删掉原来设备上的老的provisioning profile。
  • 您是否在用包含IAP的provisioning profile在部署测试程序?在Xcode5中,建议使用General中的Team选项来自动管理。
  • 您是否是在模拟器中测试IAP?虽然理论上说模拟器在某些情况下可以测试IAP,但是条件很多也不让人安心,因此您确实需要一台真机来做IAP测试。
  • 您是在企业版发布中测试IAP么?因为企业版没有iTC进行内购项目管理,也无法发布AppStore应用,所以您在企业版的build中不能使用IAP。
  • 您是否将设备上原来的app删除了,并重新进行了安装?记得在安装前做一下Clean和Clean Build Folder。
  • 您是否在运行应用前将设备上实际的Apple ID登出了?建议在设置->iTunes Store和App Stroe中将使用中的Apple ID登出,以未登录状态进入应用进行测试。
  • 你是否使用的是Test User?如果你还没有创建Test User,你需要到iTC中创建。
  • 您使用的测试账号是否是美国区账号?虽然不是一定需要,但是鉴于其他地区的测试账号经常抽风,加上美国区账号一直很稳定,因此强烈建议使用美国区账号。正常情况下IAP不需要进行信用卡绑定和其他信息填写,如果你遇到了这种情况,可以试试删除这个测试账号再新建一个其他地区的。
  • 您是否有新建账户进行测试?可能的话,可以使用新建测试账户试试看,因为某些特定情况下测试账户会被Apple锁定。
  • 您的应用是否是被拒状态(Rejected)或自己拒绝(Developer Rejected)了?被拒绝状态的应用的话对应还未通过的内购项目也会一起被拒,因此您需要重新将IAP项目设为Cleared for Sale。
  • 您的应用是否处于等待开发者发布(Pending Developer Release)状态?等待发布状态的IAP是无法测试的。
  • 您的内购项目是否是最近才新建的,或者进行了更改?内购项目需要一段时间才能反应到所有服务器上,这个过程一般是一两小时,也可能再长一些达到若干小时。
  • 您在iTC中Contracts, Tax, and Banking Information项目中是否有还没有设置或者过期了的项目?不完整的财务信息无法进行内购测试。
  • 您是在越狱设备上进行内购测试么?越狱设备不能用于正常内购,您需要重装或者寻找一台没有越狱的设备。
  • 您是否能正常连接到Apple的服务器,你可以访问Apple开发者论坛关于IAP的板块,如果苹果服务器正down掉,那里应该有热烈的讨论。

猫神的链接:http://onevcat.com/2013/11/ios-iap-checklist/

时间: 2024-09-29 17:46:24

iOS应用内购基本步骤及问题的相关文章

iOS应用内购常见问题及注意事项

如果您在实现和测试iOS应用内购的时候遇到问题,可以逐一对照下面所列出的条目,并逐一进行检查.相信可以排除大部分的错误. 1.您是否在iOS Dev Center中打开了对应应用AppID的In-App Purchases功能?登陆iOS Dev Center的Certificates, Identifiers & Profiles下,在Identifiers中找到正在开发的App,In-App Purchase一项应当显示Enabled(如果使用Xcode5,可以直接在Xcode的Capabi

IOS,苹果内购和添加广告

内购——应用内购买 通过苹果应用程序商店有三种主要赚钱的方式: 直接收费(与国内大部分用户的消费习惯相悖) 广告(降低用户体验 应用程序名称带Lite可以添加广告) O2O -> Online推广 & Offline交易,闭环 不要砍功能,增加内容,而不是增加功能 内购:应用程序本身的增值产品,游戏装备,应用程序中增值功能同样可以内购 第三方支付:跟应用程序无关的 内购分成:三(苹果)七(开发商)开 提示: 要做好游戏 & 应用,一定要研究心理,要研究哲学 人人都是产品经理 内购的五

ios IAP 内购验证

参考我之前的笔记 苹果内购笔记,在客户端向苹果购买成功之后,我们需要进行二次验证. 二次验证 IOS在沙箱环境下购买成功之后,向苹果进行二次验证,确认用户是否购买成功. 当应用向Apple服务器请求购买,成功之后,Apple会返回以下四个数据给应用 四个验证数据 productIdentifier:cosmosbox.strikehero.gems60 state: Purchased receipt: ewoJInNpZ25hdHVyZSIgPSAiQXF1M3JiR1grbmJMeGVvZS

内购的步骤

### 1.配置明确的App ID ### 2.配置应用程序信息,增加内购相关的内容 * 2.1.登录Member Center * 2.2.登录iTunes Connect * 2.3.点击App内购买项目 * 2.4.创建新的内购项目 * 2.4.1.选择内购项目类型:消耗型项目,非消耗型项目 * 2.4.2.输入参考名称 * 2.4.3.输入产品ID * 2.4.4.设置价格等级 * 2.4.5.输入显示名称 * 2.4.6.输入内购项目的描述 * 2.4.7.上传屏幕快照 * 2.5.在

iOS 应用内购(iAP)

国内银行CNAPS CODE 查询 http://weekend.blog.163.com/blog/static/746895820127961346724/ 在iTunesConnect创建内购商品时,为什么只有Free Subscription一种类型? http://www.oschina.net/question/865151_115660 在iTunesConnect创建内购商品时,为什么只有Free Subscription一种类型? 阿里百川梦想创业大赛,500万创投寻找最赞的A

iOS开发内购图文教程

2015年最全的内购图文教程,首先是填各种资料,最后是代码,废话不多说,直接上图 ======================第一部分协议=============== 第一步.png 第二步.jpg 第三步.jpg 第四步.png 第五步.png 第六步.png 第七步.jpg 第八步.jpg 第九步.jpg 第十步.png CNAPS CODE 查询地址https://e.czbank.com/CORPORBANK/query_unionBank_index.jsp 十一步.jpg 十二步.

iOS App 内购 Demo

/*注意事项: 1.沙盒环境测试appStore内购流程的时候,请使用没越狱的设备. 2.请务必使用真机来测试,一切以真机为准. 3.项目的Bundle identifier需要与您申请AppID时填写的bundleID一致,不然会无法请求到商品信息. 4.如果是你自己的设备上已经绑定了自己的AppleID账号请先注销掉,否则你哭爹喊娘都不知道是怎么回事. 5.订单校验 苹果审核app时,仍然在沙盒环境下测试,所以需要先进行正式环境验证,如果发现是沙盒环境则转到沙盒验证. 识别沙盒环境订单方法:

iOS 应用内购的坑

21004 你提供的共享密钥和账户的共享密钥不一致 下面这张图的意思就是在购买类型是自动续订时,服务端做验证就要传入这个密钥 https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html#//apple_ref/doc/uid/TP40010573-CH104-SW1 下面这两个就比较好理解了 21007 收据信息是测试用(sa

内购和广告

内购原理(类似商场交易): 内购实现步骤: 导入StoreKit框架 1.用要销售的商品列表 给苹果 1.1.创建一个产品请求  用来请求可销售的商品列表 //开始请求 2.返回一个可以销售的商品列表 //3.展示可销售的商品列表 4.用户点击购买 -> 生成一个交易 5.把交易添加到交易队列(交易对象需要监听者来监听交易状态) 6.添加一个监听者 监听交易的状态 [[SKPaymentQueue defaultQueue]addTransactionObserver:self]; 7.交易完成