Unity iOS内购项目总结

这几天在开发unity游戏的时候想接入ios的内购系统,所以网上查了一些有关的资料和教程。里面的东西比较全面,但也有一些已经比较老了。所以在实际开发的时候还是踩了一些坑。所以在这里分享一下自己的经验,让像我一样的Unity新人少走弯路。

先介绍一下自己的开发环境和接入ios内购项目前的准备工作。我用的Unity版本是Unity 2017.1.1f1个人版,这个版本也是到目前为止(2017年9月)最新的版本。使用的是unity5.5之后自带的跨平台内购插件(In-App Purchasing)。想要接入ios内购项目就必须购买苹果的开发者项目,价格为99美元一年。至此,我们的准备工作就算完成了。

接下来,就要在apple网站上面配置我们的App。打开并登陆Itunes Connect

在创建App之前请把协议、税务和银行业务填写完毕。这个很重要,以后你的app赚钱了,你就必须要履行相关的义务。不过这篇文章不做介绍,需要了解的可以去百度。在这里我提供一篇介绍如何填写的文章:协议、税务和银行业务

如果你完成了税务的填写,那么请点击我的App。

下面白色部分是已经创建的APP。如果你是第一次开发ios项目的话请点上图左上角的“+”按钮。

如果你之前都没有开发过App或者你从来没有把Unity导入进Xcode的话,就会出现上面的对话框。什么是套装ID,其实就是Bundle ID。

这个就是Bundle ID,一个App对应一个Bundle ID。所以如果你跳出这个对话框就说明目前你已经没有可用的Bundle ID了,所以要注册一个。说到这里坑的地方就要来了,马上我会向大家展示。不过在这里不管你有没有跳出这个对话框,你都重新去注册一个新的。点击“请在此注册一个”按钮。如果你之前就有一个Bundle ID的话,请进入注册Bundle ID


点击上图红色方块链接

上面红色方块里的就是你所拥有的Bundle ID,一般情况只要你曾经把unity导入到xcode里面都会有一个Bundle ID。不过坑就在这里,请点击你的这个Bundle ID。

你会发现所有功能除了GameCenter以外都是关着的包活内购功能,并且不能修改,至少我目前为止还不知道怎么改。这就比较坑了,我没发现这个坑之前不管怎么试都没有成功。所以在这里我们就要新建一个Bundle ID。回到之前的页面,点击右上角的“+”按钮。


在Name这一栏就填上你app的名字就可以了。

Bundle ID就请按照下面的书写格式填写com.你或你的团队的域名.app的名字。

上面就是在你这个id中可以提供的服务,我们发现内购功能已经被默认勾选了。如果你不需要其他功能的话就点击下面的“continue”按钮。这样我们的Bundle ID就创建好了,可以把页面关闭了。回到之前的Itunes Connect,点击新建App,这时候你刚刚注册的ID就显示在一个下拉框中,选择这个ID。

点击“功能”按钮

这里我们就可以看见app里所有的内购项目了,如果你没有创建过内购项目,下面是空的。点击图中的“+”按钮。

这里对内购项目分为四个类型,每个类型下面都有明确的解释,你需要根据自己app的实际情况来选择消费类型。我在这里就选择“非消耗类型”来讲解。点击“费消耗类型”,并创建。

参考名称就填实际的内购名称,比如说是出售某个皮肤,就填XXX皮肤。产品ID这个要注意了,一会要用的Unity中,请谨慎填写。一般的格式就是你的Bundle ID+内购项目名称。比如com.TeamName.AppName.Skin。下面是定价,按照实际需求设定。内容托管现在我还没搞清楚,以后会去了解下,再来补充,这里是不用去管它。

本地化版本,一般情况填都是简体中文,如果打算在别的国家上架并使用当地的语言就点击“+”按钮添加新的语言。显示名称和描述都是按照实际情况来填写。App Store推广暂时不用管,如果你的项目有需求也可以进行设置。

接下来就是审核信息了,一般情况就是把你的购买这个项目的UI截图并上传,然后在旁边的审核备注里填写具体的购买信息和购买后的作用。

到这里一个内购项目就已经完成了,如果上面的信息没有填写完整的话,这个内购项目的状态会变成“缺少元文件”。这里顺便提一句,之前我让大家看的第一个Bundle ID,如果使用这个Bundle ID,里面的内购功能没有打开的话,你所创建的所有内购项目的状态都是“正在等待上传”。就是这个坑让我卡了大半天。所以新人在这里就需要注意了。当你的内购项目成功创建以后,状态应该是“准备提交”。

好了,如果在测试阶段的话,我们还需要一个沙箱测试账号,用这个账号可以测试内购项目而不用自己的钱。回到Itunes connect主页。点击“用户和职能”按钮。

再点击“沙箱测试技术员”按钮

然后在用户旁边点击“+”按钮,完成所有填写,可以随便填,记住邮箱和密码就行。至此,itunes connect上面所有的操作就算完成了。接下来就要到Unity里面进行操作了。

打开Unity,进入你的项目,在最右边的面板中选中Services,并打开下面的In-App Purchasing。

然后根据提示把内购插件导入进你的项目中,这个插件就在你项目的Plugins文件夹下面。这个插件可以用简单的控件进行操作,也可以用脚本来操作。这里我就不用代码了,因为这类代码网上也很多,需要的可以自己去找下。

这里我就介绍下如何使用挂载控件的方法,简单易懂。

首先选中需要内购的Button,在这个Button中添加IAP Button的组件。

上面这个面板就是添加内购组件的面板。此时这个里面是空的,需要添加内购项目。点击“IAP Catalog”按钮。点击“Add Product”按钮。

注意这里的ID就是之前的产品ID。下图右边的产品ID。

Type就是之前选择内购项目的四个类型之一,是什么就选什么。Locale填Chinese,Title就选内购项目名称。创建完之后回到Inspector面板,这时候点击Product ID下拉菜单,就会显示你刚创建的内购项目。选完它之后,就可以添加购买成功和失败的方法了。就像普通按钮那样就行了。之后就可以到入到Xcode中了。不过这之前一定要注意在PlayerSetting里的Bundle Identifier一定要和在Itunes Connect中创建的要一模一样。导入到Xcode后,打开Capabilities中的In-App Purchasing。

为了使用沙箱账号进行测试,我们必须把原来自己真机上的账号注销掉。点击app store把页面滑到最下面,这时可以看见自己的邮箱账户。点击你的邮箱,再点注销。此时你的账号就被注销掉了。

图片发自简书App

在这里,你不需要登入沙箱账号,因为一会点击app中内购按钮的时候才会被要求登入。此时就算你登入了要会被告知失败。准备好以后,就从Xcode中打开你的app项目,并点击你刚刚设置好的内购按钮。下面是我项目的演示。


图片发自简书App



图片发自简书App

可以看到,测试已经成功了。但要注意一点,Environment sandbox,这个意思是你正在使用沙箱测试账号购买这个内购商品,如果没有出现,请不要点击购买进行测试,重新检查自己的ios账号有没有注销掉,不然会扣除里面真的货币。

好了,到这里,所有的步骤都已经完成了。如果想要在真正上线的app中使用,还需要和app一起提交进行审核。

我自己也是一名unity初学者,如果不嫌弃,我们可以一起交流,你有什么问题也可以来问我。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 207,113评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,644评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,340评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,449评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,445评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,166评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,442评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,105评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,601评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,066评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,161评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,792评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,351评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,352评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,584评论 1 261
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,618评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,916评论 2 344

推荐阅读更多精彩内容