新增Google Admob到ANDROID應用中

lostinai發表於2013-08-24

http://blog.csdn.net/snowolf_538/article/details/6620255

現在的ANDROID大部分還是靠在應用裡面植入廣告來盈利。Google Admob是一個不錯的平臺,但是到網路上一搜,發現按照現有的文章的步驟來新增的話,根本不成功。最後還是到Google Admob的官方文件才得到一個詳細的步驟。故本文針對其步驟做了一個簡要的翻譯。

 

本文使用的Google Admob SDK為4.1.0,原文網址為:http://code.google.com/intl/zh-CN/mobile/ads/docs/android/fundamentals.html

使用Google Admob SDK包括以下三個步驟:

1, 新增SDK到Eclipse工程裡

2, 新增com.google.ads.AdActivity

3, 宣告必須的網路許可權

4, 新增com.google.ads.AdView

1,新增SDK

解壓之後的SDK包含一個jar檔案,一個docs資料夾和一個README文件。

1.1 右鍵單擊Eclipse的工程並選擇屬性

1.2 選擇Java Build Path->Libraries,選擇Add External JARs新增Google Admob SDK的jar檔案

 

2, 新增com.google.ads.AdActivity

為了使你的應用在顯示Admob廣告的時候正確的維護Activity的棧,必須在AndroidManifest.xml檔案新增com.google.ads.AdActivity

 

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.           package="com.company"  
  4.           android:versionCode="1" android:versionName="1.0">  
  5.   <application android:icon="@drawable/icon" android:label="@string/app_name"  
  6.                android:debuggable="true">  
  7.     <activity android:label="@string/app_name" android:name="BannerExample">  
  8.       <intent-filter>  
  9.         <action android:name="android.intent.action.MAIN"/>  
  10.         <category android:name="android.intent.category.LAUNCHER"/>  
  11.       </intent-filter>  
  12.     </activity>  
  13.     <activity android:name="com.google.ads.AdActivity"  
  14.               android:configChanges="keyboard|keyboardHidden|orientation"/>  
  15.   </application>  
  16. </manifest>  

 

3,宣告許可權

廣告需要訪問網路,必須新增許可權。

 

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.           package="com.company"  
  4.           android:versionCode="1" android:versionName="1.0">  
  5.   <application android:icon="@drawable/icon" android:label="@string/app_name"  
  6.                android:debuggable="true">  
  7.     <activity android:label="@string/app_name" android:name="BannerExample">  
  8.       <intent-filter>  
  9.         <action android:name="android.intent.action.MAIN"/>  
  10.         <category android:name="android.intent.category.LAUNCHER"/>  
  11.       </intent-filter>  
  12.     </activity>  
  13.     <activity android:name="com.google.ads.AdActivity"  
  14.               android:configChanges="keyboard|keyboardHidden|orientation"/>  
  15.   </application>  
  16.   <uses-permission android:name="android.permission.INTERNET"/>  
  17.   <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>  
  18. </manifest>  

4,新增AdView

有如下兩種方式來新增AdView。

4.1 直接在程式碼中新增

在程式碼裡直接新增AdView需要如下步驟

1,Import com.google.ads.*

2,宣告一個AdView例項

3,建立AdView,指定你的Admob Publisher ID

4,新增AdView到UI

5,裝載廣告

 

可參考如下示例:

 

  1. import com.google.ads.*;  
  2.   
  3. public class BannerExample extends Activity {  
  4.   @Override  
  5.   public void onCreate(Bundle savedInstanceState) {  
  6.     super.onCreate(savedInstanceState);  
  7.     setContentView(R.layout.main);  
  8.   
  9.     // Create the adView  
  10.     AdView adView = new AdView(this, AdSize.BANNER, MY_AD_PUBLISHER_ID);  
  11.     // Lookup your LinearLayout assuming it’s been given  
  12.     // the attribute android:id="@+id/mainLayout"  
  13.     LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);  
  14.     // Add the adView to it  
  15.     layout.addView(adView);  
  16.     // Initiate a generic request to load it with an ad  
  17.     adView.loadAd(new AdRequest());  
  18.   }  
  19. }  

4.2 在XML檔案中新增

也可以在layout xml檔案中新增AdView。


  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.               xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"  
  4.               android:orientation="vertical"  
  5.               android:layout_width="fill_parent"  
  6.               android:layout_height="fill_parent">  
  7.   <com.google.ads.AdView android:id="@+id/adView"  
  8.                          android:layout_width="wrap_content"  
  9.                          android:layout_height="wrap_content"  
  10.                          ads:adUnitId="MY_AD_PUBLISHER_ID"  
  11.                          ads:adSize="BANNER"  
  12.                          ads:loadAdOnCreate="true"/>  
  13. </LinearLayout>  



測試結果

 

注意:當Admob第一次接收到你的Publisher ID的廣告請求時,可能需要最多2分鐘來接受廣告。當你的Publisher ID有24小時沒有使用時,這初始的2分鐘間隔將會重複出現。

 

 

 


相關文章