在App中加入AdMob廣告-入門介紹與編程技巧

來(lái)源:簡(jiǎn)書
作者:KyXu
時(shí)間:2020-06-30
2595
雖然在App中加入廣告來(lái)盈利是比較低級(jí)的商業(yè)化方式,但對(duì)于個(gè)人開(kāi)發(fā)者或者小團(tuán)隊(duì)開(kāi)發(fā)者來(lái)說(shuō),做出一個(gè)簡(jiǎn)單易用的免費(fèi)小工具,在里面加入一些廣告,如果用的人多,也是可以帶來(lái)一些可觀的收入的。

<前言>

雖然在App中加入廣告來(lái)盈利是比較低級(jí)的商業(yè)化方式,但對(duì)于個(gè)人開(kāi)發(fā)者或者小團(tuán)隊(duì)開(kāi)發(fā)者來(lái)說(shuō),做出一個(gè)簡(jiǎn)單易用的免費(fèi)小工具(舉個(gè)栗子),在里面加入一些廣告,如果用的人多,也是可以帶來(lái)一些可觀的收入的。用戶沒(méi)有掏錢,得到了方便,開(kāi)發(fā)者也得到了回報(bào):)

我個(gè)人出于對(duì)金錢的考慮和對(duì)Google的信任,選擇了AdMob這個(gè)平臺(tái)來(lái)在App中投放廣告(https://apps.admob.com訪問(wèn)需要搭梯子,梯子為SS的用戶最好全局代理,自動(dòng)代理的話訪問(wèn)起來(lái)會(huì)很卡)。

就目前來(lái)看,我果還是不太擅長(zhǎng)移動(dòng)App廣告這一塊,所以不推薦大家用iAd(好像現(xiàn)在還是不支持中國(guó)大陸?聽(tīng)說(shuō)前一陣子Apple解散了有一百來(lái)人的iAd部門?)國(guó)內(nèi)的一些其他平臺(tái)也是有所聽(tīng)說(shuō),但是沒(méi)有嘗試,如果大家知道有什么其他的好的可以在移動(dòng)App上投放廣告的平臺(tái),也歡迎評(píng)論,一起交流~

<流程>

1.首先,你要有一個(gè)Google賬號(hào),登錄AdMob

2.進(jìn)去之后,點(diǎn)網(wǎng)站右上角的設(shè)置按鈕,把各種資料該填的都填了,什么電話、郵箱、地址之類的。

251884-004eaaf9fe473aa3.jpg

AdMob網(wǎng)站截圖

注意,地址要填真實(shí)地址,在Google給你匯款之前,他要給你郵寄一封實(shí)體信件,上面有一個(gè)PIN碼,你要把這個(gè)PIN碼輸入到AdMob網(wǎng)站上的相應(yīng)位置,Google才會(huì)開(kāi)始你給你匯款。我現(xiàn)在已經(jīng)驗(yàn)證過(guò)身份了,沒(méi)辦法截圖,好在這個(gè)網(wǎng)站也不復(fù)雜,就那么幾個(gè)頁(yè)面。要做好收不到這個(gè)信件的準(zhǔn)備(包括我在內(nèi)的國(guó)內(nèi)N多開(kāi)發(fā)者都收不到這個(gè)信件,不知道是不是郵政的問(wèn)題),如果1個(gè)月沒(méi)有收到這個(gè)信件,可以再次申請(qǐng)讓Google郵寄信件,總共有3次機(jī)會(huì),3個(gè)月以后,還沒(méi)收到信件,可以上傳身份證照片(我就是這樣),然后Google會(huì)以極速(我當(dāng)時(shí)是幾個(gè)小時(shí))通過(guò)這個(gè)請(qǐng)求。不過(guò)畢竟等了三個(gè)月,如果你第一次就準(zhǔn)確無(wú)誤地填了地址,運(yùn)氣又很好的話,可以1個(gè)月內(nèi)就讓Google準(zhǔn)備給你付款。付款規(guī)則是每個(gè)月進(jìn)行一次統(tǒng)計(jì),如果到了100美金,就匯款,否則計(jì)入下個(gè)月,直到攢夠100美金,匯款時(shí)間是下個(gè)月的21號(hào)。比如你1月賺了30刀,2月就不會(huì)收到錢,2月賺了110刀,3月的21號(hào)Google會(huì)把你賺到的總共140刀都匯款給你。

3.接下來(lái)的過(guò)程就不贅述了,無(wú)非是去AdMob里面添加個(gè)應(yīng)用,拿到一個(gè)類似 app-key 的識(shí)別碼(AdMob里面叫ca-app-pub,每個(gè)廣告對(duì)應(yīng)一個(gè)識(shí)別碼,一個(gè)App可以加入多個(gè)橫幅式廣告或插頁(yè)式廣告,一個(gè)App可以對(duì)應(yīng)多個(gè)識(shí)別碼),把 GoogleMobileAds.framework 下載下來(lái),看一下人家的示例代碼,就集成到App了。

<橫幅式廣告與插頁(yè)式廣告>

開(kāi)發(fā)者在App中加入廣告時(shí),要極力避免讓用戶感到非常厭煩。如果你的App幫用戶解決了問(wèn)題,那用戶看看廣告也無(wú)所謂,人家解決了手頭的問(wèn)題才是正事,但是滿屏的廣告不停地彈,那也未免吃相不好,用戶可能一怒之下把App刪掉。

251884-9c11c2c9dad6309e.jpg

左邊為橫幅式廣告 右邊為插頁(yè)式廣告

橫幅式廣告的好處在于,雖然占用了用戶一部分屏幕空間,但是只要你不點(diǎn)擊它,它不會(huì)影響用戶的其他操作,只要你的廣告條沒(méi)有遮擋任何內(nèi)容,那么這個(gè)橫幅除了礙眼之外,對(duì)用戶使用App基本沒(méi)有影響。

而插頁(yè)式廣告則是以彈窗的形式出現(xiàn),用戶需要去左上角或者右上角點(diǎn)擊一下關(guān)閉按鈕才行,應(yīng)該說(shuō)是比橫幅式廣告要更討厭一些(反正我是這么覺(jué)得的),應(yīng)該說(shuō)這是略為嚴(yán)重的打擾了用戶對(duì)App的使用的。但是好處在于,插頁(yè)式廣告是以全屏彈出的形式出現(xiàn)的,它不影響你設(shè)計(jì)的App界面的純凈度,讓你有100%的空間來(lái)展示你需要布局在UI中的東西,比如你做了一個(gè)UI極簡(jiǎn)的應(yīng)用,整個(gè)App都是純黑+純白的,這時(shí)候加一個(gè)顏色復(fù)雜的橫幅廣告,就很影響觀感。

還有一種情況是你希望你的用戶付費(fèi)來(lái)去除廣告,可以是在App中加一個(gè)付費(fèi)去廣告的內(nèi)購(gòu),也可以鼓勵(lì)用戶付費(fèi)升級(jí)應(yīng)用到高級(jí)版,這種情況下可以嘗試橫幅式廣告和插頁(yè)式廣告都添加。一部分用戶對(duì)你的App有需求,又不想頻頻被廣告打擾,就可以選擇付費(fèi)。不過(guò)這種情況下,我們可以認(rèn)為添加廣告的目的之一就是為了去打擾用戶,迫使用戶付費(fèi),所以應(yīng)該適可為止,不要過(guò)于頻繁地彈出廣告,這真的挺煩人的。

<展示廣告的代碼技巧>

1.在 UITableView 底部展示橫幅廣告

var admob = GADBannerView()

// 設(shè)置GADBannerView的frame、設(shè)置廣告ID、加載廣告請(qǐng)求

self.tableView.contentInset = UIEdgeInsetsMake( 0, 0, admob.frame.height, 0)

這段代碼的意思是讓 UITableView 的可滾動(dòng)內(nèi)容區(qū)域在底部收縮,收縮長(zhǎng)度為banner廣告條的高度。這樣在用戶一直向上拖拽 UITableView 直到盡頭的時(shí)候,可以讓它的可拖拽區(qū)域比之前大一些,就不至于讓廣告遮擋了 UITableView 的最后幾行。

如果你的 UITableView 是存在于 UITableViewController 中的,那么 UITableView 的 frame 是不可調(diào)節(jié)的,所以通過(guò)上面的代碼,我們可以方便地避免廣告遮擋原有的內(nèi)容。而即便你的 UITableView 是存在于 UIViewController 中的,即這個(gè) UITableView 是你自己添加進(jìn)來(lái)的,你可以任意調(diào)節(jié) frame,我依然建議你用上面這種方法,而不是直接把 UITableView 的 frame 調(diào)小,來(lái)給廣告空出位置。因?yàn)槟愕膹V告并不一定能顯示的出來(lái),可能是用戶把你的廣告屏蔽了,也可能是網(wǎng)絡(luò)狀況不好,這時(shí)候反正你的廣告也顯示不出來(lái),應(yīng)該給用戶更多的屏幕空間來(lái)顯示 UITableView 的內(nèi)容。

2.利用定時(shí)器輪詢插頁(yè)式廣告加載狀態(tài)

這里不太恰當(dāng)?shù)氖褂昧恕拜喸儭边@個(gè)詞,大家意會(huì)就好。

假如你要彈出一次插頁(yè)式廣告,那么Google給出的示例代碼是下面這個(gè)樣子

251884-5d0560a958d5a0aa.jpg

如何創(chuàng)建 GADInterstitial 媒體資源、初始化該資源并隨廣告加載它

251884-89aa27ab2b20a117.jpg

展示插頁(yè)式廣告


這里的展示邏輯是:不要打擾用戶玩游戲的過(guò)程,在用戶玩游戲的過(guò)程中默默地加載廣告,等用戶一次游戲結(jié)束了,如果這時(shí)候廣告加載好了,就把廣告彈出來(lái)。

然而實(shí)際情況是,我們的應(yīng)用可能不是游戲,并沒(méi)有一個(gè)這么明顯的類似完成了一局游戲這樣的一個(gè)段落結(jié)束的地方。這時(shí)候你可能希望每30秒彈出一次插頁(yè)式廣告,然而這個(gè)廣告可能是第40秒才加載好的,這就導(dǎo)致了:雖然你設(shè)置的是30秒顯示一次廣告,但是30s的時(shí)候廣告沒(méi)加載好,就沒(méi)顯示出來(lái),60s的時(shí)候顯示了40s時(shí)加載的廣告。而更理想的情況是:30s時(shí)沒(méi)能加載好廣告,我們就開(kāi)始輪詢,直到廣告加載好了,也就是40s時(shí),把廣告顯示出來(lái),然后設(shè)定第70s時(shí)展示下一次廣告。

下面給出一段示例代碼,這里的廣告展示邏輯是:每60秒展示一次廣告,如果到了這個(gè)時(shí)刻,廣告沒(méi)加載好,就設(shè)置定時(shí)器每3秒查看一次廣告資源是否就緒,直到廣告加載好了,展示廣告,然后設(shè)置60秒后出現(xiàn)下一次廣告。

import UIKit


class ExampleViewController: UIViewController {

    

    // AdMob 插頁(yè)廣告

    var adInterstitial = GADInterstitial(adUnitID: "ca-app-pub-xxxx/xxxx")

    // 定時(shí)器

    var timer = NSTimer()

    

    

    override func viewDidLoad() {

        super.viewDidLoad()

        

        // 初始化 AdMob 插頁(yè)廣告

        let gadRequest1 = GADRequest()

        self.adInterstitial.loadRequest(gadRequest1)

        self.addTimerToShowAd(3) // 3秒一次輪詢直到第一次展示廣告

    }


    

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

    }

    

    

    private func addTimerToShowAd( showAdTimeInterval:NSTimeInterval){

        self.timer = NSTimer.scheduledTimerWithTimeInterval( showAdTimeInterval, target: self,

            selector: "showAd", userInfo: nil, repeats: true)

        [NSRunLoop.currentRunLoop().addTimer(self.timer, forMode: NSRunLoopCommonModes)]

    }

    

    

    @objc private func showAd() {

        if self.adInterstitial.isReady {

            // 廣告成功加載,顯示廣告,重置定時(shí)器

            self.adInterstitial.presentFromRootViewController(self)

            self.timer.invalidate()

            self.addTimerToShowAd(60)

        }else {

            // 廣告沒(méi)有成功加載,開(kāi)始3秒一次的快速輪詢

            self.timer.invalidate()

            self.addTimerToShowAd(3)

        }

    }

}

上面的代碼中的關(guān)于定時(shí)器方面的內(nèi)容,就不多做介紹。

立即登錄,閱讀全文
原文鏈接:點(diǎn)擊前往 >
版權(quán)說(shuō)明:本文內(nèi)容來(lái)自于簡(jiǎn)書,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
相關(guān)文章
Admob平臺(tái)注冊(cè)及收款
Admob平臺(tái)注冊(cè)及收款
Admob最大的優(yōu)勢(shì)是全球范圍內(nèi)填充率相對(duì)較高;且有流量即可變現(xiàn),線下APP也可支持變現(xiàn)。但2021年政策逐步收緊,5月份起,新APP需要過(guò)審,且只有上架Google play、Appstore、Amazon、OPPO、VIVO、XIAOMI、Galaxy Store應(yīng)用商店,才可審核過(guò)進(jìn)行變現(xiàn),但不妨礙Admob依然是全球最大的廣告聯(lián)盟平臺(tái)。
Admob
廣告變現(xiàn)
2023-01-12
Google Admob碰到無(wú)效流量問(wèn)題的解決思路
Google Admob碰到無(wú)效流量問(wèn)題的解決思路
做Google Admob的廣告變現(xiàn),新賬號(hào)很容易遇到無(wú)效流量問(wèn)題,這里提供一下解決思路。
Google Admob
流量
2022-03-15
歡迎AdMob用戶使用全新“廣告活動(dòng)”報(bào)告
歡迎AdMob用戶使用全新“廣告活動(dòng)”報(bào)告
近期所有AdMob用戶的報(bào)告后臺(tái)將看到全新的“廣告活動(dòng)”報(bào)告。此報(bào)告集中顯示您的廣告效果,將AdMob廣告聯(lián)盟報(bào)告、中介報(bào)告和出價(jià)報(bào)告中的數(shù)據(jù)、指標(biāo)和維度整合到一個(gè)報(bào)告中。
Admob
Google Admob
2021-12-28
解讀AdMob廣告單元技術(shù)接入指南
解讀AdMob廣告單元技術(shù)接入指南
本期文章內(nèi)容來(lái)源于AdMob技術(shù)專員的信息分享,向您介紹關(guān)于AdMob技術(shù)接入時(shí)需要注意的以下3條黃金準(zhǔn)則。
Google Admob
2021-12-28
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開(kāi)掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
個(gè)人VIP
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家