cocos2dx lua游戏加入谷歌广告是怎么样的

学习游戏开发的两个方向 Cocos2d-x 和 Unity 3D/2D,哪个前景更好? - 知乎969被浏览294305分享邀请回答15628 条评论分享收藏感谢收起496 条评论分享收藏感谢收起更多Cocos2dx 插入广告 - 简书
Cocos2dx 插入广告
个人开发者只能依靠广告来获取微薄的收入,说起来确实有点可悲,最让人心寒的是,很多用户不理解,要求游戏要好玩,要免费,要没有广告,我只能说,你来。吐槽完毕!进入正题,在Cocos2dx 中插入广告和直接在Android中插入广告主要的区别在于,在Cocos2dx 中是通过c++来调用Java代码从而实现广告的插入,本文将用插屏广告为例,进行讲解。完成广告的嵌入,需要做如下准备
1.下载对应广告的SDK2.修改AppActivity.java3.构建自定义c++文件并绑定lua4.修改两个mk文件5.调用广告
1.下载对应广告的SDK
这点不用讲太多,国内几个类似什么有米啊,友盟啊,不过上平台还是很坑,表示无奈。对应的广告平台都有很详细的介绍,这里就啰嗦了,主要来看第二三点
2.修改AppActivity.java
C:\Users\user\Documents\Cocos\Jump\frameworks\runtime-src\proj.android\src\org\cocos2dx\lua
添加一个静态函数,作为c++调用的接口
然后再handler中做逻辑处理,你要显示的广告就放在这里面,包括以后微信分享啊,什么的,只要通过改变what参数就可以实现各种功能
3.构建自定义c++文件并绑定lua
关于这点在我的另一篇文章有过详细的阐述,对于不了解的朋友,可以先看看,知道怎么了绑定自定义c++之后,我们只要在自定义c++类中来调用java的接口,也就是步骤2中的
public static void showAdverisement(int what)
自定义类的头文件
#ifndef __ColorBlind__ADVERTISEMENT__
#define __ColorBlind__ADVERTISEMENT__
#include &cocos2d.h&
using namespace cocos2d;
#if(CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#include "platform/android/jni/JniHelper.h"
#include &jni.h&
#include "Cocos2d.h"
USING_NS_CC;
class CC_DLL Advertisement
static void showAdvertisement(int);
static int test();
自定义类的源文件
#include "Advertisement.h"
void Advertisement::showAdvertisement(int what)
//判断当前是否为Android平台 JniMethodInfo showAd;
#if(CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
JniMethodI
bool isHave = JniHelper::getStaticMethodInfo(minfo,"org/cocos2dx/lua/AppActivity","showAdvertisement", "(I)V");
if(!isHave)
CCLog("jni:showAdvertisement is null");
//调用此函数
minfo.env-&CallStaticVoidMethod(minfo.classID, minfo.methodID,what);
int Advertisement::test()
return 100;
4.修改两个mk文件
自定义的c++文件在win32平台自然是没有问题的,但是编译到手机上往往会提示文件不存在等问题,原因便是mk文件没有注明自定义类。打开
C:\Users\user\Documents\Cocos\Jump\frameworks\cocos2d-x\cocos
下的Android.mk文件
在LOCAL_SRC_FILES后添加自定义类。
C:\Users\user\Documents\Cocos\Jump\frameworks\cocos2d-x\cocos\scripting\lua-bindings\proj.android
下的Android.mk文件
在LOCAL_SRC_FILES后添加
../auto/lua_cocos2dx_custom_auto.cpp \
5.调用广告
调用广告其实就是调用c++了,在lua中通过cc.自定义类:自定义函数()来调用。这里便是
cc.Advertisement:Advertisement(1)
这样就将调用java中对应的函数来使得广告跳出和隐藏了。自学 cocos2d 游戏开发应该按什么步骤进行? - 知乎3618被浏览170598分享邀请回答
/v_show/id_XMTI2NjcxOTQ0OA==.html
1.5K178 条评论分享收藏感谢收起43231 条评论分享收藏感谢收起更多8 个回答被折叠()2015年7月 Web 开发大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。

我要回帖

更多关于 cocos2dx 教程 的文章

 

随机推荐