zoukankan      html  css  js  c++  java
  • 【iOS】苹果IAP(内购)中沙盒账号使用注意事项

     

    96 
    谦言忘语 
    2016.12.15 10:25* 字数 1828 阅读 16262评论 155

    目标

    • 沙盒账号的正确使用方式
    • 沙盒账号使用的注意事项

    1.沙盒账号是什么

    iOS应用里面用到了苹果应用内付费(IAP)功能,在项目上线前一定要进行功能测试。测试肯定是需要的,何况这个跟money有关。。。开发完成了之后,如何进行测试呢?难道我测试个内购功能要自己掏钱?就算是公司掏钱,但是苹果要吃掉3成的啊,想想如果是99刀的商品,点下购买的时候心里都有点发慌。。。
    苹果当然没这么坑了,测试内购,苹果提供了沙盒账号(也叫沙箱账号)的方式。这个沙箱账号其实是虚拟的AppleID,在开发者账号后台的iTune Connect上配置了之后就能使用沙盒账号测试内购,有了沙盒账号,就能体验一把土豪的感觉了,游戏钻石什么的随便充,反正不用我的钱。

    注意:你可以把沙盒账号看做是一个虚拟的AppleID,这个AppleID只有进行内购测试的功能。

    2.沙盒账号使用的前提

    • 内购的商品ID,价格等相关信息已经录入到开发者后台了(不然那你买什么)
    • 开发者后台已经创建好沙盒测试账号了(下面我们会将如何创建)
    • 你要有一部真机(iPhone或iPad都行,别用模拟器就好。而且不能是越狱机)
    • bundleID别搞错了,开发者账号、证书、bundleID要一致
    • 如果你是第一次在这个开发者账号上集成内购功能,请先将iTune Connect上的税务协议都填写好,否则内购时会发现商品ID无效。

    税务协议的问题不少童鞋遇到了,可以参考这篇文章http://www.jianshu.com/u/62f0c72a2004

    3.沙盒账号创建

    登录苹果开发者后台--iTunes Connect--用户和职能--沙箱测试技术员,在这个界面你可以看到当前账号已经创建好的沙盒账号。

     
    沙箱测试技术员管理界面

    点击“+”进行创建


     
    创建沙盒账号
     
    新创建的沙盒账号

    如图,我创建一个沙盒账号。具体信息:

    • 名字为test1
    • AppleID为jianshutest1@123.com(也就是上面填的电子邮件)
    • App Store地区为中国

    注意:

    • 电子邮件不能是别人已经注册过AppleID的邮箱
    • 电子邮箱可以是一个不存在电子邮箱(只要符合格式,随便写)
    • App Store 地区不要乱选。虽然随便哪个地区都可以用来测试(还没上线之前app并没有地区之分),但是在沙盒测试的时候,弹出的购买提示框会根据当前AppleID(沙盒账号)的地区显示语言的。

    4.沙盒账号使用流程

    • 1.在iPhone上安装测试包(必须是adhoc签名证书或者develop签名证书打的包,不能是从App Store上下载的)

    • 2.退出iPhone的App Store账号(因为我们需要使用沙盒账号登录)。

      • 操作方法一:打开App Store应用首页滑到最下方--选中AppleID--注销
      • 操作方法二:设置--iTunes Store与App Store--选中AppleID--注销

    这里只需要退出账号,退出之后,不需要在这里登录沙盒账号,因为你压根就登录不了。之前已经说过了,沙盒账号是一个假的AppleID账号,不能直接登录的。如果强行登陆,会出现以下报错提示:

     
    使用沙盒账号直接登录报错提示
    • 3.在测试包里面购买商品,系统会让你进行登录,这里我们点击“使用现有的AppleID”就可以输入刚才创建好的沙盒测试账号进行登录了。
     
    点击购买商品后出现登录窗口
     
    输入沙盒账号密码进行登录
    • 4.输入账号之后,有可能会出现如下提示,点击确定之后会跳转到App Store,导致这次购买失败。没关系,我们再次回到测试包,然后购买商品就好
     
    跳转到App Store跳转店面的提示

    出现提示的原因:因为AppleID是分地区的。之前我们创建沙盒账号的时候就看到了,需要选择地区。App Store也是分地区的,对应的AppleID只能在App Store对应的地区进行下载和购买东西。我们刚才创建的jianshutest1@123.com这个账号的地区是中国,所以只能在中国店面登录。由于我之前的登录的账号越南的,所以此时AppStore店面是越南店面。所以我们这次登录,系统会跳转到AppStore应用将店面切换到中国。另外,App Store应用切换地区的时候,会报【Your request produced an error】。这个不需要管。

    • 5.点击购买商品之后,成功的话会出现相应提示。
     
    商品内容和价格展示窗口

    备注:我们在iTunes Connect上创建商品了之后,除了需要填商品ID,商品名称,商品描述,价格等之外,还要上传一张图片,图片就是上面这个界面。

     
    购买成功提示

    沙盒账号注意事项

    • BudleID,证书,商品ID等内容一致,才能进行接下来的储值测试(BundleID都不对,还玩什么)
    • 测试设备需要使用不越狱的真机(越狱机不能进行沙盒储值,模拟器也不能进行沙盒储值)
    • 沙盒账号是不能直接在App Store进行登录的,只能在点击了购买商品之后,在弹出的登录框进行登录。
    • 真实的AppleID不能在adhoc证书和develop证书打出来的包进行沙盒储值测试,所以在沙盒测试之前,需要退出真实的AppleID账号
    • 从App Store上面下载的包不能使用沙盒账号进行储值

    关于证书的问题:
    1.使用develop签名证书和adhoc签名证书打的ipa包,我把他们叫做测试包,测试包只能使用沙盒账号进行储值,不能使用真实的AppleID进行储值
    2.从App Store应用下载的包,我把他们叫做线上包,线上包只能使用真实的AppleID进行储值,不能使用沙盒账号进行储值

    另外唠叨一下:
    楼主平常上传包的时候是打包了ipa包之后,使用Xcode里面的Application Loader应用上传应用的。
    虽然很多人上传包使用的是appstore的签名证书,但是,其实使用adhoc的证书打包的ipa包也是可以正常上传并且送审上线的。我平常就是用adhoc的证书打包成ipa包,给测试妹子测试,测试完直接用这个包上传送审了。嘿嘿。

  • 相关阅读:
    js高级1
    JUC总览
    7 种阻塞队列相关整理
    Exchanger 相关整理
    Semaphore 相关整理
    ConcurrentLinkedQueue 相关整理
    ConcurrentHashMap(1.8) 相关整理
    ConcurrentHashMap(1.7) 相关整理
    ReentrantReadWriteLock 相关整理
    LockSupport 工具相关整理
  • 原文地址:https://www.cnblogs.com/3554558328-s/p/8297066.html
Copyright © 2011-2022 走看看