COCOS2DX 添加广告(百度移动联盟)

mac2022-06-30  85

查看类路径方法:

 javap -s YourClassName 

 

定义:

打开: \项目\proj.android\src\org\项目名\你的游戏名

 

public class FNXN extends Cocos2dxActivity{ …… …… public static AdView adView;    // 第3方广告 …… …… }

 

方法1:

android 代码:

  

public static void TESTADS() {   new Thread(new Runnable(){   @Override   public void run() {   adView.setVisibility( adView.VISIBLE );   }   }).start(); }

  

C++ 代码:

载入头文件

#include <jni/JniHelper.h>

 

JniMethodInfo minfo; jobject jobj; bool b = JniHelper::getStaticMethodInfo(minfo, "org/agame/fnxn/FNXN", //类路径 请修改成自己的类路径 "TESTADS", //静态方法名 "()V"); //括号里的是参数,后面的是返回值。 jobj = minfo.env->CallStaticObjectMethod(minfo.classID, minfo.methodID);

  

方法2(广播):

和方法1大同小异

 

Android 代码:

private class MainHandler extends Handler { @Override public void handleMessage(Message msg) { switch (msg.what) { case 1: { adView.setVisibility( adView.VISIBLE ); break; } case 2: { adView.setVisibility( adView.GONE ); break; } default: break; } } }

 在onCreate里添加下列代码

protected void onCreate(Bundle savedInstanceState){…… super.onCreate(savedInstanceState); //添加 mHandler = new MainHandler(); …… }

  

继续添加静态函数:

public static void SendMsg(int i) { mHandler.sendEmptyMessage(i); Log.i("A", "SendMsg:"+i); }

 

C++ 代码 :

调用 SendMsg 就可以了

JniMethodInfo minfo; jobject jobj; jint _int = 1; bool b = JniHelper::getStaticMethodInfo(minfo, "org/agame/fnxn/FNXN", //类路径 "SendMsg", //静态方法名 "(I)V"); //括号里的是参数,后面的是返回值。 jobj = minfo.env->CallStaticObjectMethod(minfo.classID, minfo.methodID, 1 );

  

转载于:https://www.cnblogs.com/stop/articles/2834260.html

最新回复(0)