转载请注明:WEIGUO GAME
www.wei77guo.com自己实现了下Unity的ios App内购(IAP),由于自己的Unity是普通版本,不是专业版,加上不愿意花钱买in-app 内购插件。
(PS:网上好像有破解的,不过俺还是算了,和国际接轨嘛)
好在整个过程不难
实现流程基本就是这样:
1.首先在unity中创建导出的函数。你可以参考官网上的iPhoneNativeCodeSample例子。
我这里简单给个样子:
public class IAPUnity
{
[DllImport ("__Internal")]
private static extern void _DoIAP ();
public static void DoIAP()
{
// 只有在iphone上我们才调用这个函数
if (Application.platform != RuntimePlatform.OSXEditor)
_DoIAP ();
}
}
2.导出工程到Xcode
3. 实现标准的StoreKit的购买请求。这个网上有很多例子,还有官方手册,俺就不写了。
4 在实现中加入:
extern "C"
{
void _DoIAP ()
{
//这里调用你标准请求的相关方法
}
}
这样当在Unity里调用IAPUnity的DoIAP 方法的时候,就会顺藤摸瓜的调用这个_DoIAP了,同时在_DoIAP中你又实现了StoreKit内购的内容,于是也就进行了内购。当然我们还需要在你的内购代码里加上额外的unity提供的函数,告诉unity你的内购成功了。
5返还给Unity
在你的标准StoreKit购买的代码里加入UnitySendMessage函数。
比如有类似这样的:
//内购成功了
。。。
UnitySendMessage("IAPMgr","BuySucceed","")
。。。
这里我们用UnitySendMessage从objC向Unity里面的一个IAPMgr名字的对象,调用了这个对象的BuySucceed方法,内容是""
具体用法可以查手册。
经过以上流程,内购就搞定啦。
整个流程说起来比较简单,但是动手做起来还是需要一点时间的。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。