ขั้นตอนแรกสู่การแสดงโฆษณาและสร้างรายได้คือการผสานรวม SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เข้ากับแอป เมื่อผสานรวม SDK แล้ว คุณจะเลือกรูปแบบโฆษณา (เช่น วิดีโอเนทีฟหรือวิดีโอที่มีการให้รางวัล) และทำตามขั้นตอนเพื่อติดตั้งใช้งานได้
ก่อนเริ่มต้น
ทําตามขั้นตอนในส่วนต่อไปนี้เพื่อเตรียมแอป
ข้อกำหนดเบื้องต้นของแอป
ตรวจสอบว่าไฟล์บิลด์ของแอปใช้ค่าต่อไปนี้
minSdkVersion
จาก19
ขึ้นไปcompileSdkVersion
จาก33
ขึ้นไป
ตั้งค่าแอปในบัญชี AdMob
ลงทะเบียนแอปของคุณเป็นแอป AdMob โดยทำตามขั้นตอนต่อไปนี้
ลงชื่อเข้าใช้หรือลงชื่อสมัครใช้บัญชี AdMob
ลงทะเบียนแอปกับ AdMob ขั้นตอนนี้จะสร้างแอป AdMob ที่มีรหัสแอป AdMob ที่ไม่ซ้ำ ซึ่งจำเป็นต้องทำภายหลังในคู่มือนี้
กำหนดค่าแอป
ในไฟล์
build.gradle
ระดับโปรเจ็กต์ ให้ใส่ที่เก็บ Maven ของ Google และที่เก็บส่วนกลาง Maven ไว้ทั้งส่วนbuildscript
และallprojects
buildscript { repositories { google() mavenCentral() } } allprojects { repositories { google() mavenCentral() } }
เพิ่มทรัพยากร Dependency สำหรับ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google ลงในไฟล์ Gradle ระดับแอปของโมดูล ซึ่งโดยปกติเป็น
app/build.gradle
ดังนี้dependencies { implementation 'com.google.android.gms:play-services-ads:22.5.0' }
เพิ่ม AdMob รหัสแอปตามที่ระบุในเว็บอินเทอร์เฟซAdMob ลงในไฟล์
AndroidManifest.xml
ของแอป หากต้องการทำเช่นนั้น ให้เพิ่มแท็ก<meta-data>
ด้วยandroid:name="com.google.android.gms.ads.APPLICATION_ID"
คุณดูรหัสแอปได้ใน AdMob อินเทอร์เฟซเว็บ สำหรับandroid:value
ให้ใส่ AdMob รหัสแอปของคุณเองโดยใส่เครื่องหมายคำพูดล้อมรอบ<manifest> <application> <!-- Sample AdMob 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>
ในแอปจริง ให้ใช้รหัสแอป AdMob จริง ไม่ใช่รหัสที่ระบุไว้ข้างต้น หากคุณแค่อยากจะทดสอบ SDK ในแอป Hello World คุณสามารถใช้รหัสแอปตัวอย่างที่แสดงอยู่ด้านบน
โปรดทราบด้วยว่าไม่ได้เพิ่มแท็ก
<meta-data>
ตามที่แสดงด้านบนผลการค้นหาข้อขัดข้องที่มีข้อความดังกล่าวThe Google Mobile Ads SDK was initialized incorrectly.
(ไม่บังคับ) ประกาศสิทธิ์
AD_ID
เพื่อให้เวอร์ชันก่อนหน้าใช้งานกับ Android 13 ได้หากแอปใช้ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 20.4.0 ขึ้นไป คุณสามารถข้ามขั้นตอนนี้ได้เนื่องจาก SDK จะประกาศสิทธิ์
com.google.android.gms.permission.AD_ID
โดยอัตโนมัติและจะเข้าถึงรหัสโฆษณาเมื่อใดก็ตามที่มีได้สำหรับแอปที่ใช้ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 20.3.0 หรือ ต่ำกว่าและกำหนดเป้าหมายเป็น Android 13 คุณต้องเพิ่มสิทธิ์
com.google.android.gms.permission.AD_ID
ในไฟล์AndroidManifest.xml
สำหรับ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เพื่อเข้าถึงรหัสโฆษณา<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
รวมถึงวิธีปิดใช้ได้ที่บทความนี้ใน Play Console
เริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google
ก่อนที่จะโหลดโฆษณา ให้แอปเริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google โดยเรียกใช้ MobileAds.initialize()
ซึ่งจะเริ่มต้น SDK และเรียก Listener ที่เสร็จสมบูรณ์กลับมาเมื่อเริ่มต้นโฆษณาเรียบร้อยแล้ว หรือหลังจากระยะหมดเวลา 30 วินาที คุณต้องดำเนินการนี้เพียงครั้งเดียวเท่านั้น
จะดีที่สุดเมื่อเปิดแอป
โฆษณาอาจโหลดล่วงหน้าโดย SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google หรือ SDK ของพาร์ทเนอร์สื่อกลางเมื่อเรียกใช้ MobileAds.initialize()
หากต้องได้รับความยินยอมจากผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA) ให้ตั้งค่าแฟล็กคำขอที่เจาะจง เช่น tagForChildDirectedTreatment
หรือ tag_for_under_age_of_consent
หรือมิเช่นนั้นก็ขอให้ดำเนินการก่อนโหลดโฆษณา ก่อนเริ่มใช้งาน SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google
ตัวอย่างวิธีเรียกใช้เมธอด 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);
MobileAds.initialize(this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(InitializationStatus initializationStatus) {
}
});
}
}
Kotlin
import com.google.android.gms.ads.MobileAds
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
MobileAds.initialize(this) {}
}
}
หากคุณใช้สื่อกลาง ให้รอจนกว่าจะมีการเรียกตัวแฮนเดิลที่เสร็จสมบูรณ์ก่อนที่จะโหลดโฆษณา เนื่องจากวิธีนี้จะช่วยให้มั่นใจได้ว่าอะแดปเตอร์สื่อกลางทั้งหมดจะเริ่มต้นทำงาน
เลือกรูปแบบโฆษณา
ตอนนี้ Google Mobile Ads SDK ได้รับการนำเข้าแล้ว และคุณก็พร้อมติดตั้งใช้งานโฆษณาแล้ว AdMob มีโฆษณาหลากหลายรูปแบบให้คุณได้เลือกใช้ เพื่อเลือกรูปแบบที่เหมาะกับประสบการณ์ของผู้ใช้แอปมากที่สุด
แบนเนอร์
โฆษณาทรงสี่เหลี่ยมผืนผ้าที่ปรากฏด้านบนหรือด้านล่างของหน้าจออุปกรณ์ โฆษณาแบนเนอร์จะแสดงบนหน้าจอขณะที่ผู้ใช้โต้ตอบกับแอป และสามารถรีเฟรชโดยอัตโนมัติหลังจากเวลาผ่านไปช่วงหนึ่ง หากคุณยังใหม่ต่อโฆษณา บนอุปกรณ์เคลื่อนที่ นี่คือจุดเริ่มต้นที่ดี
โฆษณาคั่นระหว่างหน้า
โฆษณาเต็มหน้าจอที่บดบังอินเทอร์เฟซแอปจนกว่าผู้ใช้จะปิด โดยจะเหมาะที่สุดในการหยุดชั่วคราวระหว่างการดำเนินการของแอป เช่น ระหว่างการเปลี่ยนด่านเกมหรือหลังจากทำงานเสร็จ
เนทีฟ
โฆษณาที่ปรับแต่งได้ซึ่งเข้ากับรูปลักษณ์ของแอป โดยคุณจะเป็นผู้กำหนดวิธีและตำแหน่งที่วางโฆษณา เพื่อให้เลย์เอาต์สอดคล้องกับการออกแบบของแอปมากขึ้น
ได้รับรางวัลแล้ว
โฆษณาที่ให้รางวัลผู้ใช้จากการชมวิดีโอสั้นๆ และโต้ตอบกับโฆษณาที่เล่นได้และแบบสำรวจ ใช้สำหรับสร้างรายได้จากแอปเล่นฟรี
แหล่งข้อมูลเพิ่มเติม
ที่เก็บโฆษณา Google Mobile ใน GitHub สาธิตวิธีใช้รูปแบบโฆษณาต่างๆ ที่ API นี้มีให้บริการ