Google AdMob原生高級廣告,google admob廣告收入Google AdMob原生高級廣告原生高級廣告展示UnifiedNativeAd加載原生廣告時,Google移動廣告SDK會調(diào)用相應(yīng)廣告格式的監(jiān)聽器。然后,就由您的應(yīng)用負責展示廣告了,盡管不一定要立即展示廣告。為了更輕松地展示系統(tǒng)定義的廣告格式,該......
原生高級廣告
展示UnifiedNativeAd
加載原生廣告時,Google移動廣告SDK會調(diào)用相應(yīng)廣告格式的監(jiān)聽器。然后,就由您的應(yīng)用負責展示廣告了,盡管不一定要立即展示廣告。為了更輕松地展示系統(tǒng)定義的廣告格式,該SDK提供了一些實用資源,如下所述。
UnifiedNativeAdView類
對于UnifiedNativeAd格式,有對應(yīng)的UnifiedNativeAdView類。該類是一個ViewGroup,發(fā)布商應(yīng)將其用作UnifiedNativeAd的根。一個UnifiedNativeAdView對應(yīng)于一個統(tǒng)一原生廣告。凡是用于展示該廣告素材資源的視圖(例如,展示屏幕截圖素材資源的ImageView),均應(yīng)是UnifiedNativeAdView對象的子對象。
對于使用LinearLayout展示素材資源視圖的統(tǒng)一原生廣告,其視圖層次結(jié)構(gòu)可能如下所示:
下面這個示例創(chuàng)建了一個UnifiedNativeAdView,然后用UnifiedNativeAd填充該視圖:
重要注意事項:請注意,對于指定的原生廣告,應(yīng)在UnifiedNativeAdView布局內(nèi)呈現(xiàn)所有素材資源。當在原生廣告視圖布局外呈現(xiàn)原生廣告素材資源時,Google移動廣告SDK就會在日志中記錄一條警告。
廣告視圖類還提供了注冊每項素材資源所用視圖時會用到的方法,并提供了一個用于注冊NativeAd對象本身的方法。如果以這種方式注冊視圖,該SDK就可以自動處理諸如以下任務(wù):
·記錄點擊次數(shù)
·記錄展示次數(shù)(當?shù)谝粋€像素出現(xiàn)在屏幕上時)
·顯示廣告選擇疊加層
廣告選擇疊加層
該SDK會向每個廣告視圖中添加一個廣告選擇疊加層。請在原生廣告視圖中任選您喜歡的一角留出空間,用于展示自動插入的廣告選擇徽標。此外,廣告選擇疊加層一定要顯眼易見,因此請選擇適當?shù)谋尘邦伾蛨D片。
廣告標示
您必須展示廣告標示,以指明該視圖是廣告。
代碼示例
以下是展示統(tǒng)一原生廣告的步驟:
創(chuàng)建UnifiedNativeAdView類的實例。
對于要展示的每個廣告素材資源:
使用廣告對象中的素材資源填充素材資源視圖。
向ViewGroup類注冊該素材資源視圖。
如果您的原生廣告布局包含大型媒體素材資源,請注冊MediaView。
向ViewGroup類注冊廣告對象。
以下是一個展示UnifiedNativeAd的示例函數(shù):
讓我們來看看各項具體任務(wù):
填充布局
在本示例中,我們要填充一個XML布局(該布局包含的視圖用于展示統(tǒng)一原生廣告),然后找到對UnifiedNativeAdView的引用。請注意,如果您的片段或活動中有現(xiàn)成的UnifiedNativeAdView,也可以重復(fù)使用它;您甚至可以在不使用布局文件的情況下動態(tài)創(chuàng)建一個實例。
填充和注冊素材資源視圖
下面的示例代碼會找到用于顯示標題的視圖,使用廣告對象所提供的字符串素材資源設(shè)置視圖的文字,然后向UnifiedNativeAdView對象注冊該視圖:
對于應(yīng)用要展示的由原生廣告對象所提供的每項素材資源,都應(yīng)為其重復(fù)上述過程,即找到相應(yīng)視圖、設(shè)置其值并向廣告視圖類注冊它。
點擊處理
重要注意事項:在原生廣告視圖之上或內(nèi)部的任何視圖上,請勿實現(xiàn)任何自定義點擊處理程序。要自行觀察點擊事件,請使用廣告監(jiān)聽器。
只要您按上一部分所述正確填充和注冊了素材資源視圖,該SDK就會處理廣告視圖素材資源獲得的點擊。
以下是一個使用廣告監(jiān)聽器觀察點擊事件的示例:
注冊MediaView
重要注意事項:如果您要在原生廣告的布局中包含主圖片素材資源,則需要使用MediaView素材資源,而不是ImageView素材資源。
MediaView是一個專門用于展示主媒體素材資源(視頻或圖片)的View。
MediaView可以在XML布局中定義,也可以動態(tài)構(gòu)建。就像所有其他素材資源視圖一樣,它應(yīng)該放在NativeAdView的視圖層次結(jié)構(gòu)中。對于使用MediaView的應(yīng)用,必須向NativeAdView注冊它,如下所示:
與所有素材資源視圖一樣,媒體視圖也需要填充內(nèi)容,這通過使用mediaContent屬性來完成。UnifiedNativeAd的mediaContent屬性包含可傳遞到MediaView的媒體內(nèi)容。
以下代碼段用于為媒體視圖設(shè)置媒體內(nèi)容:
設(shè)置ImageScaleType
MediaView類在顯示圖片時具有ImageScaleType屬性。如果您想在MediaView中更改圖片的縮放方式,請使用MediaView的setImageScaleType()方法設(shè)置相應(yīng)的ImageView.ScaleType。
例如,要在圖片顯示時填充MediaView(廣告中不包含視頻),請使用以下代碼:
GitHub示例
我們的GitHub代碼庫包含以Java和Kotlin編寫的原生高級廣告的完整實現(xiàn)方案。
下載原生高級廣告示例
MediaContent
MediaContent類包含與原生廣告的媒體內(nèi)容相關(guān)的數(shù)據(jù),媒體內(nèi)容則通過MediaView類展示。使用MediaContent實例設(shè)置MediaView mediaContent屬性時:
·如果廣告有視頻素材資源可用,則系統(tǒng)會對其進行緩沖,并開始在MediaView內(nèi)播放。您可以通過檢查hasVideoContent()來判斷是否有視頻素材資源可用。
·如果廣告不包含視頻素材資源,則會改為下載mainImage素材資源,并將其放置在MediaView內(nèi)。
注意:默認情況下,mainImage是下載的第一個圖片素材資源。如果使用了setReturnUrlsForImageAssets(true),則mainImage為null,您必須將mainImage屬性設(shè)置為您手動下載的圖片。請注意,僅在沒有視頻素材資源可用時,系統(tǒng)才會使用此圖片。
注冊原生廣告對象
這是最后一步,也就是向負責顯示原生廣告對象的視圖注冊該對象:
原生視頻廣告
除了圖片、文字和數(shù)字外,有些原生廣告會包含視頻素材資源。但不是每個廣告都會包含視頻素材資源,相關(guān)應(yīng)用也并非一定要展示這些資源。
為了簡化視頻的配置和展示,Google移動廣告SDK提供了與視頻相關(guān)的以下類:
VideoOptions
通過VideoOptions類,您可以為應(yīng)用配置原生視頻素材資源的行為方式。VideoOptions對象應(yīng)該分配給構(gòu)建AdLoader時使用的NativeAdOptions對象:
VideoOptions.Builder類目前提供了setStartMuted()方法,用于指示該SDK是否應(yīng)該在靜音狀態(tài)下開始播放視頻素材資源。默認值為true。
VideoController
VideoController類用于獲取有關(guān)視頻素材資源的信息。通過調(diào)用getVideoController()方法,應(yīng)用可以從UnifiedNativeAd對象獲得對該控制器的引用:
即使廣告中沒有視頻素材資源,此方法也會始終返回VideoController對象。
VideoController提供hasVideoContent()方法;如果廣告中有視頻素材資源,則該方法返回true,否則返回false。
應(yīng)用也可以使用VideoController.VideoLifecycleCallbacks類,在視頻素材資源生命周期內(nèi)發(fā)生事件時接收通知:
銷毀廣告
當完成原生廣告展示后,您應(yīng)該將其銷毀,以便系統(tǒng)正確地對廣告進行垃圾回收處理。
特別聲明:以上文章內(nèi)容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關(guān)于作品內(nèi)容、版權(quán)或其它問題請于作品發(fā)表后的30日內(nèi)與ESG跨境電商聯(lián)系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號密碼登錄
平臺顧問
微信掃一掃
馬上聯(lián)系在線顧問
小程序
ESG跨境小程序
手機入駐更便捷
返回頂部