標籤:win32 ccm pre dir one macros title roi direct
上篇,把基本工作做完了,接下來,在C++下加入代碼。
1、開啟win32下的project,加入一個類。DomobAd。代碼例如以下,
<pre name="code" class="cpp">#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)#include <jni.h>#include "platform/android/jni/JniHelper.h"//#include <android/log.h>#include "cocos2d.h"#endifusing namespace cocos2d;class DomobAd{public:DomobAd();virtual ~DomobAd();static void showInterstitial();/*static void initInterstitial();static void showBanner();static void hideBanner();*/};
#include "DomobAd.h"DomobAd::DomobAd(){}DomobAd::~DomobAd(){}//void DomobAd::showBanner()//{//#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) //JniMethodInfo showBanner;//bool isHave = JniHelper::getStaticMethodInfo(showBanner, "org/cocos2dx/cpp/AppActivity", "showBannerStatic", "()V");//if (!isHave) {//CCLog("jni:showBannerStatic false");//}//else{////showBanner.env->CallStaticVoidMethod(showBanner.classID, showBanner.methodID);//}//#endif//}//void DomobAd::hideBanner()//{//#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) //JniMethodInfo hideBanner;//bool isHave = JniHelper::getStaticMethodInfo(hideBanner, "org/cocos2dx/cpp/AppActivity", "hideBannerStatic", "()V");//if (!isHave) {//CCLog("jni:hideBannerStatic false");//}//else{//CCLog("jni:hideBannerStatic true");////hideBanner.env->CallStaticVoidMethod(hideBanner.classID, hideBanner.methodID);//}//#endif//}void DomobAd::showInterstitial(){#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) JniMethodInfo showInterstitial;bool isHave = JniHelper::getStaticMethodInfo(showInterstitial, "org/cocos2dx/cpp/AppActivity", "showInterstitialStatic", "()V");if (!isHave) {CCLog("jni:showInterstitial false");}else{CCLog("jni:showInterstitial true");showInterstitial.env->CallStaticVoidMethod(showInterstitial.classID, showInterstitial.methodID);}#endif}//void DomobAd::initInterstitial()//{//#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID) //JniMethodInfo initInterstitial;//bool isHave = JniHelper::getStaticMethodInfo(initInterstitial, "org/cocos2dx/cpp/AppActivity", "initInterstitialStatic", "()V");//if (!isHave) {//CCLog("jni:initInterstitial false");//}//else{//CCLog("jni:initInterstitial true");////initInterstitial.env->CallStaticVoidMethod(initInterstitial.classID, initInterstitial.methodID);//}//#endif//}
#ifndef __APPMACROS_H__#define __APPMACROS_H__#include "cocos2d.h"#define DESIGN_RESOLUTION_480X320 0#define DESIGN_RESOLUTION_1024X768 1#define DESIGN_RESOLUTION_2048X1536 2/* If you want to switch design resolution, change next line */#define TARGET_DESIGN_RESOLUTION_SIZE DESIGN_RESOLUTION_480X320typedef struct tagResource{ cocos2d::CCSize size; char directory[100];}Resource;static Resource smallResource = { cocos2d::CCSizeMake(480, 320), "iphone" };static Resource mediumResource = { cocos2d::CCSizeMake(1024, 768), "ipad" };static Resource largeResource = { cocos2d::CCSizeMake(2048, 1536), "ipadhd" };#if (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_480X320)static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(480, 320);#elif (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_1024X768)static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(1024, 768);#elif (TARGET_DESIGN_RESOLUTION_SIZE == DESIGN_RESOLUTION_2048X1536)static cocos2d::CCSize designResolutionSize = cocos2d::CCSizeMake(2048, 1536);#else#error unknown target design resolution!#endif// The font size 24 is designed for small resolution, so we should change it to fit for current design resolution#define TITLE_FONT_SIZE (cocos2d::CCEGLView::sharedOpenGLView()->getDesignResolutionSize().width / smallResource.size.width * 24)#endif /* __APPMACROS_H__ */
</pre><pre name="code" class="cpp">
//在helloworldscene.cpp加入例如以下代碼就可以:
<pre name="code" class="cpp"> CCMenuItemLabel * closeInterstital=CCMenuItemLabel::create(CCLabelTTF::create("showInterstital", "Helvetica", 40),this, menu_selector(HelloWorld::menuShowInterstitialCallback));
void HelloWorld::menuShowInterstitialCallback(cocos2d::CCObject* pSender){ DomobAd::showInterstitial();}
//JniHelper 類是cocos提供的。詳細使用方法:http://blog.csdn.net/luxiaoyu_sdc/article/details/15874505<a target=_blank href="http://blog.csdn.net/luxiaoyu_sdc/article/details/15874505">點擊開啟連結</a>
</pre><pre name="code" class="cpp" style="font-size: 13.3333339691162px;">下片再繼續
cocos2dx-3.1 接入多盟廣告sdk+Android (2)