將 Google Mobile Ads SDK 整合到應用程式中, 來顯示廣告及賺取收益整合 SDK 後 選擇廣告格式 (例如原生或獎勵影片廣告),然後按照步驟 實際執行這些工作
事前準備
如要讓應用程式做好準備,請完成下列各節的步驟。
應用程式必要條件
請確認應用程式的版本檔案使用下列的值:
- SDK 最低版本
21
或更高 - 以下編譯 SDK 版本:
33
或更高
- SDK 最低版本
設定應用程式
在 Gradle 設定檔中加入 Google 的 Maven 存放區 Maven 中央存放區:
Kotlin
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "My Application" include(":app")
Groovy
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "My Application" include ':app'
在應用程式層級的版本中加入 Google Mobile Ads SDK 的依附元件 檔案:
Kotlin
dependencies { implementation("com.google.android.gms:play-services-ads:23.3.0") }
Groovy
dependencies { implementation 'com.google.android.gms:play-services-ads:23.3.0' }
新增 Ad Manager 應用程式 ID,格式為 Ad Manager 網頁介面加入應用程式的
AndroidManifest.xml
檔案。方法是新增含有以下項目的<meta-data>
標記:android:name="com.google.android.gms.ads.APPLICATION_ID"
。您可以 您在網頁介面中應用程式 ID Ad Manager 。適用對象android:value
,請插入自己的 Ad Manager 應用程式 ID, 。<manifest> <application> <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> </application> </manifest>
在實際應用程式中,請將範例應用程式 ID 換成實際 Ad Manager 應用程式 ID。如果下列情況,您可以使用範例 ID 您只是在 Hello World 應用程式中用 SDK 進行實驗。
另請注意,無法一字不完全地新增
<meta-data>
標記 錯誤訊息:Missing application ID.
(選用) 宣告
AD_ID
權限可讓先前版本與 Android 搭配運作 13.如果您的應用程式使用 Google Mobile Ads SDK 20.4.0 或 由於 SDK 會自動宣告
com.google.android.gms.permission.AD_ID
權限,可以 盡可能存取廣告 ID。如果應用程式使用 Google Mobile Ads SDK 20.3.0 或 且以 Android 13 為目標版本,則需新增 「
com.google.android.gms.permission.AD_ID
」權限 Google Mobile Ads SDK 的AndroidManifest.xml
檔案 存取廣告 ID:<manifest> <application> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> <!-- For apps targeting Android 13 or higher & GMA SDK version 20.3.0 or lower --> <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> </application> </manifest>
如要進一步瞭解
com.google.android.gms.permission.AD_ID
權限聲明, 想瞭解如何停用此功能,可以參考這篇 Google Play 文章。
初始化 Google Mobile Ads SDK
載入廣告前,請呼叫MobileAds.initialize()
。
這個方法會在 Google Mobile Ads SDK 和轉接器初始化完成後,或在 30 秒逾時後,初始化 SDK 並呼叫完成事件監聽器。這項操作只需進行一次,最好在應用程式啟動時。
Google Mobile Ads SDK 或中介服務合作夥伴 SDK 可能會預先載入廣告
做出決定如果需要向歐洲使用者取得同意聲明
歐洲經濟區 (EEA),請設定任何請求專屬標記,例如
setTagForChildDirectedTreatment()
或
setTagForUnderAgeOfConsent()
,
或
否則請在初始化廣告前完成
Google Mobile Ads SDK。
以下範例說明如何在背景呼叫 initialize()
方法
中的執行緒:
Java
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Thread(
() -> {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(this, initializationStatus -> {});
})
.start();
}
}
Kotlin
import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val backgroundScope = CoroutineScope(Dispatchers.IO)
backgroundScope.launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(this@MainActivity) {}
}
}
}
選取廣告格式
Google Mobile Ads SDK 現已匯入完成,您隨時可以導入廣告。 Ad Manager 提供多種廣告格式, 您可以選擇最符合應用程式使用者體驗的做法。
橫幅廣告
橫幅廣告單元會佔用應用程式的部分區域來顯示矩形廣告 版面配置。而且會經過一段時間後自動重新整理。也就是說 使用者每隔一段時間就會看見新廣告 套用適當工具這種廣告格式的導入方式最簡單。
插頁式
插頁式廣告單元會在您應用程式中顯示全頁廣告。自然地展示 例如應用程式介面的破關和轉場效果 看看如何製作新的遊戲廣告
原生
原生廣告可讓您自訂素材資源,例如廣告標題 行動號召會顯示在您的應用程式中。自行設定廣告樣式 製作不會突兀的自然廣告簡報,並加入內容豐富的使用者 無須專人管理
Google Ad Manager 提供兩種導入原生廣告的方式:原生樣式和 放送標準原生廣告
原生樣式旨在簡化原生廣告的導入流程 對格式還不熟悉的使用者來說 這也是個好方法一直以來,自訂顯示功能 ,讓您在建立簡報時享有最大的自由。
已獲得獎勵
獎勵廣告單元可讓使用者玩遊戲、參加問卷調查或觀看影片 獲得應用程式內獎勵,例如金幣、額外生命或點數。您可以設定 為不同的廣告單元提供不同的獎勵,並指定獎勵價值 使用者收到的項目
插頁式獎勵廣告
插頁式獎勵廣告是一種全新的獎勵廣告格式 透過自動顯示的廣告提供獎勵,例如金幣或額外生命 在應用程式自然轉換點中運作時
與獎勵廣告不同的是,使用者不需要選擇觀看獎勵廣告 插頁式廣告。
在獎勵廣告中不會顯示選擇觀看提示,插頁式獎勵廣告並不會顯示 說明獎勵的簡介畫面,並讓使用者選擇是否要 自己想要做的事
應用程式開啟頁面廣告
應用程式開啟頁面廣告是一種廣告格式,會在使用者開啟或切換回應用程式時顯示 應用程式。廣告會重疊在載入畫面。
其他資源
GitHub 上的 Google 行動廣告存放區示範 瞭解如何使用這個 API 提供的各種廣告格式。