หากต้องการแสดงโฆษณาและรับรายได้ ให้ผสานรวม Google Mobile Ads SDK เข้ากับ แอป iOS ของคุณ ในการเตรียมโปรเจ็กต์ ให้คุณนำเข้าและเริ่มต้น Google Mobile Ads SDK ก่อนที่จะขอโฆษณา
คู่มือนี้ครอบคลุมการนำเข้าและการเริ่มต้น Google Mobile Ads SDK รวมถึงการเลือก รูปแบบโฆษณา
ข้อกำหนดเบื้องต้น
ก่อนดำเนินการต่อ โปรดตรวจสอบว่าคุณมีสิ่งต่อไปนี้
- ใช้ Xcode 16.0 ขึ้นไป
- กำหนดเป้าหมายเป็น iOS 13.0 ขึ้นไป
นำเข้า Google Mobile Ads SDK
หากต้องการนำเข้า Google Mobile Ads SDK ให้ทำตามขั้นตอนในส่วนใดส่วนหนึ่งต่อไปนี้
Swift Package Manager
หากต้องการเพิ่มทรัพยากร Dependency ของแพ็กเกจ ลงในโปรเจ็กต์ ให้ทำตามขั้นตอนต่อไปนี้
- เปิด Xcode
- ไปที่ไฟล์ > เพิ่มทรัพยากร Dependency ของแพ็กเกจ...
ติดตั้งแพ็กเกจ Swift ของ Google Mobile Ads SDK
ในข้อความแจ้งที่ปรากฏขึ้น ให้ค้นหารีโปสิทอรี GitHub ของแพ็กเกจ Swift ของ Google Mobile Ads
https://github.com/googleads/swift-package-manager-google-mobile-ads.gitเลือกเวอร์ชันของแพ็กเกจ Swift ของ Google Mobile Ads SDK ที่ต้องการใช้ สำหรับโปรเจ็กต์ใหม่ เราขอแนะนำให้ใช้สูงสุดเป็นเวอร์ชันหลักถัดไป
CocoaPods
หากต้องการใช้ CocoaPods ให้ทำตามขั้นตอนต่อไปนี้
เปิด Podfile ของโปรเจ็กต์ แล้วเพิ่มบรรทัดนี้ลงในการกำหนดค่าบิลด์
targetของแอปpod 'Google-Mobile-Ads-SDK'
เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล
pod install --repo-update
ดาวน์โหลดด้วยตนเอง
หากต้องการดาวน์โหลด Google Mobile Ads SDK ด้วยตนเอง ให้ทำดังนี้
- ดาวน์โหลด Google Mobile Ads SDK
- แยกแพ็กเกจ
googlemobileadssdkios.zip เพิ่มเฟรมเวิร์กต่อไปนี้ในโปรเจ็กต์ Xcode
GoogleMobileAds.xcframeworkUserMessagingPlatform.xcframework
ในการตั้งค่าทั่วไป ของเป้าหมาย ให้ไปที่เฟรมเวิร์ก ไลบรารี และเนื้อหาที่ฝัง
ตรวจสอบว่าคุณได้ตั้งค่า
GoogleMobileAds.xcframeworkและUserMessagingPlatform.xcframeworkเป็นฝังและลงชื่อในการตั้งค่าบิลด์ของโปรเจ็กต์ ให้ทำดังนี้
- เพิ่มเส้นทาง
/usr/lib/swiftลงในเส้นทางการค้นหา Runpath - เพิ่มแฟล็ก Linker
-ObjCลงในแฟล็ก Linker อื่นๆ
- เพิ่มเส้นทาง
อัปเดตไฟล์ Info.plist
เพิ่มคีย์ต่อไปนี้ในไฟล์ Info.plist ของแอป
คีย์
GADApplicationIdentifierที่มีค่าสตริงเป็นรหัสแอป Ad Manager ซึ่งอยู่ใน UI ของ Ad Manager และมีรูปแบบเป็นca-app-pub-################~##########คีย์
SKAdNetworkItemsคีย์นี้มีค่าSKAdNetworkIdentifierสำหรับ Googlecstr6suwn9.skadnetworkและ ผู้ซื้อบุคคลที่สามที่เลือก
ตัวอย่างที่เสร็จสมบูรณ์
<key>GADApplicationIdentifier</key>
<!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~1458002511 -->
<string>SAMPLE_APP_ID</string>
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cstr6suwn9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4fzdc2evr5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>2fnua5tdw4.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ydx93a7ass.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>p78axxw29g.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v72qych5uu.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ludvb6z3bs.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cp8zw746q7.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3sh42y64q3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>c6k4g5qg8m.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>s39g8k73mm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>wg4vff78zm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3qy4746246.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>f38h382jlk.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>hs6bdukanm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>mlmmfzh3r3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v4nxqhlyqp.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>wzmmz9fp6w.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>su67r6k2v3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>yclnxrl5pm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>t38b2kh725.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>7ug5zh24hu.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>gta9lk7p23.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>vutu7akeur.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>y5ghdn5j9k.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>v9wttpbfk9.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>n38lu8286q.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>47vhws6wlr.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>kbd757ywx3.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>9t245vhmpl.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>a2p9lx4jpn.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>22mmun2rn5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>44jx6755aq.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>k674qkevps.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4468km3ulz.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>2u9pt9hc89.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>8s468mfl3y.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>klf5c3l5u5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>ppxm28t8ap.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>kbmxgpxpgc.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>uw77j35x4d.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>578prtvx9j.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>4dzt52r2t5.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>tl55sbb4fm.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>c3frkrj4fj.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>e5fvkxwrpn.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>8c4e2ghe7u.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3rd42ekr43.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>97r2b46745.skadnetwork</string>
</dict>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>3qcr597p9d.skadnetwork</string>
</dict>
</array>แทนที่ SAMPLE_APP_ID ด้วยรหัสแอป Ad Manager ขณะทดสอบ ให้ใช้รหัสแอปตัวอย่างที่แสดงในตัวอย่างก่อนหน้า
ลิงก์กลุ่มผลตอบแทนกับแอปที่เฉพาะเจาะจงเพื่อช่วยให้แอปเริ่มต้นได้เร็วขึ้น หากกลุ่มผลตอบแทนกำหนดเป้าหมายเป็น iOS แต่ไม่ได้ลิงก์กับแอป Google จะส่งกลุ่มไปยังแอป iOS ทั้งหมดในบัญชีของคุณ แนวทางนี้อาจทำให้ประสิทธิภาพการทำงานช้าลง
เริ่มต้น Google Mobile Ads SDK
ก่อนโหลดโฆษณา ให้เริ่มต้น Google Mobile Ads SDK โดยเรียกใช้เมธอด start()
จากพร็อพเพอร์ตี้ GADMobileAds.sharedInstance
เมธอดนี้จะเรียกใช้ตัวแฮนเดิลการดำเนินการให้เสร็จสมบูรณ์หลังจากที่ Google Mobile Ads SDK และ
อะแดปเตอร์การทําสื่อกลางประมวลผลเสร็จแล้ว หรือหลังจากผ่านไป 30 วินาที
ตัวอย่างต่อไปนี้จะเริ่มต้น Google Mobile Ads SDK
Swift
// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()
SwiftUI
// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()
Objective-C
// Initialize the Google Mobile Ads SDK.
[GADMobileAds.sharedInstance startWithCompletionHandler:nil];
เมื่อเริ่มต้น Google Mobile Ads SDK อาจโหลดโฆษณาไว้ล่วงหน้าหรือเริ่มต้น SDK ของบุคคลที่สาม
เมื่อเรียกใช้เมธอด startWithCompletionHandler: หากคุณต้องขอความยินยอมจากผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA) สหราชอาณาจักร (UK) หรือสวิตเซอร์แลนด์ ให้ตั้งค่าแฟล็กที่เฉพาะเจาะจงกับคำขอ หากต้องการตั้งค่า
แฟล็กที่เฉพาะเจาะจงกับคำขอ โปรดตรวจสอบว่าได้ตั้งค่าแฟล็กก่อนที่จะเริ่มต้น
Google Mobile Ads SDK ดูรายละเอียดได้ที่การกำหนดเป้าหมาย
เลือกรูปแบบโฆษณา
หลังจากนำเข้า Google Mobile Ads SDK แล้ว คุณสามารถเลือกรูปแบบโฆษณาที่จะนำไปใช้ได้
Ad Manager มีรูปแบบโฆษณาต่อไปนี้
| รูปแบบโฆษณา | คำอธิบาย | เอกสารประกอบ |
|---|---|---|
| แบนเนอร์ | แสดงโฆษณาสี่เหลี่ยมผืนผ้าในส่วนหนึ่งของการจัดวางแอป โฆษณาจะรีเฟรชโดยอัตโนมัติตามช่วงเวลาที่กำหนด ผู้ใช้จะเห็นโฆษณาเหล่านี้เป็นระยะๆ เมื่ออยู่ในหน้าจอเดิม | ตั้งค่าโฆษณาแบนเนอร์ |
| โฆษณาคั่นระหว่างหน้า | แสดงโฆษณาแบบเต็มหน้าในแอป วางโฆษณานี้ที่จุดพักและจุดเปลี่ยนตามธรรมชาติในอินเทอร์เฟซของแอป เช่น หลังจากเล่นเกมผ่านด่านในแอปเกม | โฆษณาคั่นระหว่างหน้า |
| เนทีฟ | ช่วยให้คุณปรับแต่งเนื้อหา เช่น บรรทัดแรกและคำกระตุ้นให้ดำเนินการในแอปได้ เมื่อปรับแต่งโฆษณา คุณจะสร้างโฆษณาที่เข้ากับการออกแบบภาพของแอปได้ | โหลดโฆษณาเนทีฟ |
| ได้รับรางวัลแล้ว | ผู้ใช้จะได้รับรางวัลในแอป เช่น เหรียญหรือคะแนน จากการเล่นเกม ทำแบบสำรวจ หรือดูวิดีโอ คุณสามารถกำหนดรางวัลให้หน่วยโฆษณา และระบุมูลค่าของรางวัลและไอเท็มที่ผู้ใช้จะได้รับ | โฆษณาที่มีการให้รางวัล |
| โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล | ช่วยให้คุณนำเสนอรางวัลได้ เช่น เหรียญหรือไอเท็มเพิ่มชีวิต สำหรับโฆษณาที่ปรากฏระหว่างจุดเปลี่ยนหน้าของแอป | โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล |
| โฆษณาเปิดแอป | ปรากฏเมื่อผู้ใช้เปิดหรือกลับไปที่แอปของคุณ โฆษณาจะวางซ้อนหน้าจอการโหลด | โฆษณาเปิดแอป |