首页 > 代码库 > Android和cocos2d-x 中Admob添加广告

Android和cocos2d-x 中Admob添加广告

1.在android中添加admob的广告

从android的sdk中下载google-play-services_lib的开发库,这个里面包含了我们需要的jar文件,把下载的这个文件导入到我们eclipse工程,这个文件一般在你android SDK的extras\google目录下,选中google-play-services_lib导入eclipse 。 然后新建一个android的工程起名:TestAds,在eclipse中选中这个工程右键进入Properties属性,导入google-play-services_lib库,如下图

在这里需要注意的是你的工程文件一定要和google-play-services_lib在同一个分区下,也就是说你的工程文件如果在E盘,那你的google-play-services_lib也一定要在E盘,不然会出错,至于这个是为什么,我也不是太清楚。接下来我们就可以在我们的代码中添加广告。首先在AndroidManifest.xml中添加所需的权限:

?
1
2
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

接着在AndroidManifest.xml的Application标签下加入以下内容:

1 <meta-data android:name="com.google.android.gms.version"
2             android:value="@integer/google_play_services_version" />

接着加入activity的声明:

1  <activity android:name="com.google.android.gms.ads.AdActivity"
2              android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> 

接下来的工作就很简单了,直接在代码里写就可以了,这个代码也是例子里的,在这里我就把代码直接贴出来了

 1 package com.example.testads;
 2 
 3 import com.google.android.gms.ads.AdSize;
 4 import com.google.android.gms.ads.AdRequest;
 5 import com.google.android.gms.ads.AdView;
 6 
 7 import android.app.Activity;
 8 import android.os.Bundle;
 9 import android.view.LayoutInflater;
10 import android.view.Menu;
11 import android.view.MenuItem;
12 import android.view.View;
13 import android.view.ViewGroup;
14 import android.view.ViewGroup.LayoutParams;
15 import android.widget.LinearLayout;
16 import android.widget.RelativeLayout;
17 import android.os.Build;
18 
19 public class MainActivity extends Activity {
20     
21     private AdView adView;
22 
23 
24     @Override
25     protected void onCreate(Bundle savedInstanceState) {
26         super.onCreate(savedInstanceState);
27         
28         adView = new  AdView(this);
29         adView.setAdUnitId("ca-app-pub-1391338311745569/9247870934");
30         adView.setAdSize(AdSize.BANNER);
31         
32         RelativeLayout layout = new RelativeLayout(this);  
33         addContentView(layout, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
34         layout.addView(adView);
35         RelativeLayout.LayoutParams view_para = new RelativeLayout.LayoutParams(AdSize.BANNER.getWidthInPixels(this), AdSize.BANNER.getHeightInPixels(this));
36         view_para.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE); 
37         view_para.addRule(RelativeLayout.ALIGN_PARENT_TOP,RelativeLayout.TRUE);
38         adView.setLayoutParams(view_para);
39         
40         AdRequest rdRequest = new AdRequest.Builder().build();
41         adView.loadAd(rdRequest);
42         
43     }
44 
45     @Override
46     protected void onResume() {
47         // TODO Auto-generated method stub
48         super.onResume();
49         
50         adView.resume();
51     }
52     
53     @Override
54     protected void onDestroy() {
55         // TODO Auto-generated method stub
56         super.onDestroy();
57         adView.destroy();
58     }
59     
60 }

最后直接上一张贴出吧 

 需要注意的是这一行代码:

1  adView.setAdUnitId("ca-app-pub-1391338311745569/9247870934");

这个里面的值是要自己去申请admob的帐号的,置于怎么申请自行google一下吧