Android 广告植入 简例

转载自 http://blog.csdn.net/jackystudio/article/details/12150907

2.广告植入

现在这类广告多如牛毛。选择哪家我也就不多说了,免得有广告嫌疑。如何植入广告这里我也只能简单的说下。因为实际植入还是很麻烦的,毕竟广告商的SDK不一样,还涉及到jni技术,java基础,Android开发基础,这些都要有了解。

这里我把广告分为两类,这部分我也算初学,如果有什么错误,烦请指出。。。


2.1.Android广告和cocos2d-x游戏无交互

这类比如开场插屏广告之类的。

这里广告和游戏没有交互,也就是说它和游戏的相对独立的,大体步骤是:

(1)单独的做出一个带有广告LoadingActivity和对应布局,然后在AndroidManifest.xml中把启动Activity指向它。

(2)我们看一下JackyActivityActivity(cocos2d-x自动帮你生成的):

  1. public class JackyAirplane extends Cocos2dxActivity  
  1. public class Cocos2dxActivity extends Activity  

是的,cocos2d-x游戏也是一个Activity,所以可以在LoadingActivity中实现Runnable接口,开启一个线程调用它。

  1. Runnable runnable=new Runnable() {  
  2.       
  3.     @Override  
  4.     public void run() {  
  5.         // TODO Auto-generated method stub  
  6.         Intent intent = new Intent(LoadActivity.this, JackyAirplane.class);  
  7.         LoadActivity.this.startActivity(intent);//切换Activity  
  8.         LoadActivity.this.finish();  
  9.     }  
  10. };  


2.2.Android广告和cocos2d-x游戏有交互


这类比如过场广告,暂停广告之类的。

这里处理起来就比无交互的麻烦多了。其实也就是要在C++代码中调用JavaAPI,所以采用了Jni技术。

(1)Java代码:给JackyAirplane添加一个静态广告成员变量。

  1. public class JackyAirplane extends Cocos2dxActivity{  
  2. ...  
  3. public static AdView adView;    // 第3方广告  
  4.   
  5. }  

(2)Java代码:添加静态成员方法,用来显示广告。

  1. public static void showAD() {   
  2.   new Thread(new Runnable(){  
  3.    
  4.   @Override  
  5.   public void run() {  
  6.   adView.setVisibility( adView.VISIBLE );  
  7.   }  
  8.    
  9.   }).start();  
  10. }  


(3)C++代码:通过jni调用showAD()。

  1. #include <jni/JniHelper.h>  
  2.   
  3. JniMethodInfo minfo;    
  4. jobject jobj;    
  5.    
  6. bool b = JniHelper::getStaticMethodInfo(minfo,     
  7. "com/jacky/jackyAirplane/JackyAirplane",  //类路径  
  8. "showAD",   //静态方法名    
  9. "()V");   //括号里的是参数,后面的是返回值  
  10. if(b)  
  11.     jobj = minfo.env->CallStaticObjectMethod(minfo.classID, minfo.methodID);    
  12. else  
  13.     ;//打印错误...  

如果要控制广告的开关,可以在Java内使用Handler来接收消息控制,不过这个时候就要记得传参(开/关)了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值