Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android SDK
Code

如何通過AdMob增加你Android APP的收入

by
Difficulty:BeginnerLength:MediumLanguages:

Chinese (Traditional) (中文(繁體)) translation by tianyiliang (you can also view the original English article)

在本教程中,你將學習如何集成 AdMob,這樣你就可以通過寫Android APP賺錢,誰不想要錢?Google的AdMob是市場上最大的移動廣告平臺。

通過Android APP有許多不同的賺錢方式,包括:付費下載,付費訂閱,應用內購買和展示廣告。 雖然你可以組合這些方式,但還是建議你選擇一種方式。在本教程中,你將學到通過展示廣告來增加收入。

你將創建的廣告類型包括橫幅廣告,插頁式廣告和本地快遞廣告。 我會解釋每種廣告,並展示如何在你APP中實現它們。但在此之前,我們先來看看如何集成移動廣告SDK並進行初始化。

創建一個Android Studio項目

在Android Studio中,創建一個名為MainActivity的新項目 。

Android Studio add an activity dialog

加入移動廣告 SDK

要開始將AdMob集成到你的APP,你需要先將移動廣告SDK添加到你APP module級的 build.gradle文件中:

如果你要將Firebase集成到APP中,那麼你應該使用Firebase的SDK:

如果你需要Firebase的入門説明,請查看Envato Tuts +上的一些Firebase教程:

添加SDK後確保你同步了該專案,同步是為了從網路獲取資料。

初始化MobileAds

你需要先初始化MobileAds SDK,然後才能在Android APP上載入廣告,因此請儘早進行。我們創建一個繼承Application的類,然後我們在onCreate()方法中初始化MobileAds SDK ,因為該方法在APP啟動時僅被調用一次。 

MobileAds類的靜態方法initialize()的第二個參數應該是你從AdMob申請的app ID。這裡,我們使用Google提供的公開app ID進行演示。 

修改清單檔

我們需要將創建的類添加到我們的AndroidManifest.xml文件中 。 

而且,在這個檔中,請確保申請了INTERNET許可權以便能收到Google廣告。

在下面的代碼片段中,我們在AndroidManifest.xml中添加了 AdActivity。 

AdActivty由SDK提供。在用戶點擊廣告時觸發橫幅廣告以供觀看,而插頁式廣告也是使用者點擊後顯示。

1.橫幅廣告

橫幅廣告遮住了當前可見螢幕的一部分。換句話說,你的APP和廣告中的任何內容都會一起顯示在螢幕上。 這樣可以改善用戶體驗,因為用戶可以在廣告展示時繼續使用你的APP,而不像插頁式廣告那樣(只是掛起,我們很快就會遇到)。請注意,橫幅廣告可以是文字或圖片。 

我們來看看如何實現橫幅廣告。

在佈局中添加橫幅廣告

AdView是自訂的ViewGroup,它包含了橫幅廣告,因此我們需要修改我們的activity_banner_ad.xml佈局檔以包含此視圖。 

我們可以使用屬性ads:adSize來調整AdView大小,然後將其值設置為BANNER。ads:adSize屬性的其他值還有 LARGE_BANNERFULL_BANNERSMART_BANNER等。 

ads:adUnitIdAdView屬性設置為Google提供的示例廣告單元。如果你想從廣告中賺錢,你必須更新與你帳戶相關聯的廣告單元! 

廣告單元ID唯一標識了廣告展示位置,您可以在AdMob管理主控台中找到它。此ID將告訴AdMob你APP上顯示的廣告以及顯示格式(圖片,文字或視頻)。

載入廣告

為了顯示廣告,我們需要先請求,然後在AdView上顯示,該AdView是在BannerAdActivity類中創建的。

我們使用構建器創建了AdRequest實例來請求廣告。然後,我們使用該addTestDevice()方法,設備ID作為參數傳入,以便設備接收測試廣告,這個設備在我們的例子中是模擬器。 我們最後調用了AdViewloadAd()方法,然後在後臺執行緒中載入廣告(以免阻止UI /主執行緒)。 

測試廣告

現在,我們運行項目並查看結果。

App showing banner ad

從上面的螢幕截圖,我們看到測試的橫幅廣告顯示在視圖的下方。現在可以點擊廣告與廣告進行互動。

用AdListener監聽廣告事件

現在來看看在廣告中觀察到的事件或回檔。下面是可用的事件:

添加監聽器後,再次運行該項目並與廣告進行交互。觀看我們創建的toasts,調用事件,然後觀察它。 

2.  插頁式廣告

我們已經看到顯示橫幅廣告是多麼的容易。現在來看看如何創建插頁式廣告。

插頁式廣告是覆蓋你APP整個螢幕的廣告,沒有APP其他視圖的展示空間(我們稍後將會看到)。由於這會覆蓋整個螢幕,並且如果網速較慢,還需要一些時間來載入廣告,你需要注意不要刺激到使用者。 為了避免這種情況,理想情況下,這些插頁式廣告應在APP的自然中斷期間顯示,例如遊戲中的各個級別之間,而不是在用戶處於任務的中間時顯示。

在上面的代碼中,我們聲明並初始化了InterstitialAdActivity類中的InterstitialAd實例。我們將Google提供的廣告單元id作為 setAdUnitId()方法的參數。 

就像我們在橫幅廣告中所做的一樣,我們想要監聽廣告事件,所以我們設定一個監聽器來觸發重載方法onAdLoaded() 和  onAdFailedToLoad(int i)。我們使用AdRequest構建器創建AdRequest類的實例來請求廣告  ,然後調用方法loadAd(),將剛才創建的請求作為參數傳遞給該方法。 我們使用方法isLoaded() 來確定廣告何時載入,然後調用方法show()來顯示廣告。 

你也可以增加AdListener,就像在橫幅廣告中那樣操作。

測試廣告

現在,我們可以運行APP並查看結果。

App showing interstitial ad

在上面的螢幕截圖中,你可以看到我們的測試插頁式廣告。

3.  原生廣告快遞(Native Ads Express)

Native Ads Express可讓你(發佈者)自訂廣告的外觀和風格,使其自我調整你的APP。 此定制通過定義你AdMob帳戶中定義自己的字體,顏色,大小等CSS範本來完成的。你不能更改圖像,描述和標題,因為這些都是由廣告客戶設置的。

NativeExpressAdView中的自訂廣告可以在你的APP中顯示。

NativeExpressAdView引入到你的佈局中

下面我們在佈局檔中添加NativeExpressAdView(是一種ViewGroup)。將android:layout_height 和  android:layout_width屬性設置為wrap_contentads:adSize屬性設置為"320x300",我們會使用穀歌提供的NativeExpress廣告單元ID(僅用於演示目的)。

載入廣告

接下來,我們構建AdRequest並開始載入要顯示的廣告。我們還要添加代碼來響應Activity生命週期回檔。你也可以添加一個  AdListener,就像我們為橫幅廣告做的那樣。

測試廣告

現在,你可以運行APP,就能查看你的Native Express廣告了。

App showing NativeExpressAdView

創建你自己的AdMob帳戶

現在我們已經瞭解了不同類型的廣告,你可以開始將其集成到您的APP中了。 要真正開始展示廣告和賺錢,你還需要一個AdMob帳戶,其中包含與廣告客戶相關聯的真實廣告單元ID。AdMob帳戶只需訪問AdMob網站即可註冊! 

AdMob website home screen

結語

在本教程中,你學到了AdMob以及如何在Android中集成不同的AdMob廣告類型,例如橫幅廣告,插頁式廣告和本地快遞廣告。

要瞭解Android上關於AdMob的更多資訊,請參閱官方文檔。與此同時,請查看關於Android APP開發的其他教程!

关注我们的公众号
Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.