Unity苹果内购

Unity内购IAP的二三事

Unity端

这里需要使用Unity内置的IAP插件,下载IAP插件的方式:Window–>Services–>In-App Purchasing(这个就是unity内置的内购插件),点击把OFF->ON
在这里插入图片描述
点击之后会有个询问是否是对13岁以下儿童设计的游戏,按照情况勾选,之后点击continue进入安装界面,点击input安装

下面的Options是谷歌商店支付相关的,可以空着不用管它。
下载好插件之后会包含IAP内购的Demo,可以点击查看效果,此Demo在Unity上运行点击购买会出现一个fakeStore界面,在真机测试中会弹出正常IP的支付界面。

此时当你下载好IAP插件点击Window后会发现多出来一个UnityIAP选项,这时插件就已经安装好了。
当安装好插件后,有两种方式实现IAP内购:

一、使用IAPButton按钮
这种方法可以在层级界面点击右键可以看到UnityIAP->IAPButton,在要生成支付按钮的位置生成它,它就是一个挂载IAPButton脚本的Button按钮。
在这里插入图片描述
Product ID是设置在Unity端你要购买物品的ID,它是与你在APPStore上设置的购买项目在Unity端的映射,这个ID可以自己设定,点击下面IAP Catalog可以设定这个映射关系。
在这里插入图片描述
ID就是上文中所说的Product ID,Type是在APPStore生成内购物品时的哪几种类型,在下面是物品描述,在下面的Store ID Overrides就是在各个平台的商店里物品的正式ID了,第一个就是苹果APPStore的。再然后最下面Apple Configuration选择的是购买物品的费用,和你APPStore选一样的就行了。

IAPButton图中ButtonType有两种,当前的是交易类型按钮,还有一种是Restore按钮,用来查询和重置非消耗项目物品时使用。

在下面有两个On Purchase Complete和On Purchase Failed,这两个分别可以添加回调成功和失败后要执行的事件,使用方法就跟Button按钮最下面的On Click一模一样。

然后运行点击这个按钮就可以触发内购了。(这种方式的OK了,就是这么智能。。。。但是这种方法要设定好这个IAPButton,我们的项目先进行的安卓端的测试,UI界面已经都设置好了,要使用的话我需要把之前的的Button都改一下,好像挺麻烦的,所以用下面代码控制更灵活一点)

二、使用代码控制
下面就来用代码实现IAP内购
下面我先贴一下代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Purchasing;
 
/// <summary>
/// 这是通用方式,通过读取catalog里面的信息,获取所有商品信息
/// </summary>
public class ApplePayModule: MonoBehaviour, IStoreListener
{
    private static ApplePayModule m_instance;
    public static ApplePayModule Instance { get { return m_instance; } }
    private static IStoreController m_StoreController;
    private static IExtensionProvider m_StoreExtensionProvider;
    
    bool blnRestore = false;//用来表示
    bool blnPressRestore = false;//用来区分是否按了	restore 按钮
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值