เริ่มต้นใช้งาน

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

คู่มือนี้มีไว้สําหรับผู้เผยแพร่โฆษณาที่ต้องการสร้างรายได้จากแอป iOS ด้วย AdMob และไม่ได้ใช้ Firebase หากวางแผนที่จะรวม Firebase ไว้ในแอป (หรือคุณกําลังพิจารณาใช้) โปรดดูคู่มือฉบับนี้สําหรับ AdMob ที่มี Firebase แทน

การผสานรวม SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เข้ากับแอปเป็นขั้นตอนแรกของการแสดงโฆษณาและสร้างรายได้ เมื่อผสานรวม SDK แล้ว คุณจะใช้รูปแบบโฆษณาที่รองรับได้อย่างน้อย 1 รายการ

สิ่งที่ต้องดำเนินการก่อน

  • ใช้ Xcode 13.2.1 ขึ้นไป
  • กําหนดเป้าหมาย iOS 10.0 ขึ้นไป

นําเข้า SDK โฆษณาในอุปกรณ์เคลื่อนที่

CocoaPods (แนะนํา)

วิธีที่ง่ายที่สุดในการนําเข้า SDK ไปยังโปรเจ็กต์ iOS คือการใช้ CocoaPods เปิด Podfile ของโปรเจ็กต์และเพิ่มบรรทัดนี้ลงในเป้าหมายของแอป ดังนี้

pod 'Google-Mobile-Ads-SDK'

จากนั้นจากบรรทัดคําสั่งเพื่อเรียกใช้

pod install --repo-update

หากเพิ่งเคยใช้ CocoaPods โปรดดูเอกสารประกอบอย่างเป็นทางการเกี่ยวกับวิธีสร้างและใช้ Podfiles

ผู้จัดการแพ็กเกจ Swift

SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google รองรับSwift Package Manager ตั้งแต่เวอร์ชัน 9.0.0 ทําตามขั้นตอนด้านล่างเพื่อนําเข้าแพ็กเกจ Swift

  1. ใน Xcode ให้ติดตั้งแพ็กเกจ Swift ของโฆษณาในอุปกรณ์เคลื่อนที่ของ Google โดยไปที่ไฟล์ > เพิ่มแพ็กเกจ...

  2. ในข้อความแจ้งที่ปรากฏขึ้น ให้ค้นหาที่เก็บ Swift Package ของ Google Mobile Ads สําหรับที่เก็บ GitHub

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. เลือกเวอร์ชันของ Swift Package ของ Google บนอุปกรณ์เคลื่อนที่ที่ต้องการใช้ สําหรับโปรเจ็กต์ใหม่ เราขอแนะนําให้ใช้เวอร์ชันหลักถัดไป

เมื่อคุณดําเนินการเรียบร้อยแล้ว Xcode จะเริ่มแก้ไขทรัพยากร Dependency ของแพ็กเกจ แล้วดาวน์โหลดอยู่เบื้องหลัง ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีเพิ่มทรัพยากร Dependency ได้ในบทความของ Apple

การดาวน์โหลดด้วยตนเอง

  1. ดาวน์โหลดและแตกไฟล์เฟรมเวิร์ก SDK โดยตรง แล้วนําเข้าเฟรมเวิร์กต่อไปนี้ไปยังโปรเจ็กต์ Xcode

    • GoogleAppMeasurement.xcframework
    • GoogleAppMeasurementIdentitySupport.xcframework
    • GoogleMobileAds.xcframework
    • GoogleUtilities.xcframework
    • nanopb.xcframework
    • PromisesObjC.xcframework
    • UserMessagingPlatform.xcframework
  2. เพิ่มแฟล็ก Linker -ObjC ไปยัง แฟล็ก Linker อื่นๆ ในการตั้งค่าบิลด์ของโปรเจ็กต์

อัปเดต Info.plist

อัปเดตไฟล์ Info.plist ของแอปเพื่อเพิ่มคีย์ 2 รายการดังนี้

  1. คีย์ GADApplicationIdentifier ที่มีค่าสตริงเป็นAdMob app ID found in the AdMob UI

  2. คีย์ SKAdNetworkItems ที่มีค่า SKAdNetworkIdentifier สําหรับ Google (cstr6suwn9.skadnetwork) และ เลือกผู้ซื้อบุคคลที่สาม ที่ระบุค่าเหล่านี้ให้กับ Google

ข้อมูลโค้ดที่สมบูรณ์

<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</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>4pfyvq9l8r.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>5a6flpkh64.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>c6k4g5qg8m.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>s39g8k73mm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qy4746246.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3sh42y64q3.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>prcb7njmu6.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>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>9rd848q2bz.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>y5ghdn5j9k.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n6fk4nfna4.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>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>av6w8kgt66.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>424m5254lk.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ecpz2srf59.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>uw77j35x4d.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>mlmmfzh3r3.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>gta9lk7p23.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>zq492l623r.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3rd42ekr43.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qcr597p9d.skadnetwork</string>
  </dict>
</array>

หากคุณยังไม่ได้สร้างบัญชี AdMob และลงทะเบียนแอป ตอนนี้ก็ได้เวลาแล้ว

เริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่

ก่อนโหลดโฆษณา ให้เรียกใช้เมธอด startWithCompletionHandler: ใน GADMobileAds.sharedInstance ซึ่งจะเริ่มต้น SDK และเรียกเครื่องจัดการให้เสร็จสมบูรณ์เมื่อเริ่มต้นเสร็จสมบูรณ์ (หรือหลังจากระยะหมดเวลา 30 วินาที) ทั้งหมดนี้ต้องเกิดขึ้นเพียงครั้งเดียวเท่านั้น หากเป็นไปได้ ควรเปิดตัวแอป คุณควรโทรหา startWithCompletionHandler: โดยเร็วที่สุด

ลองดูตัวอย่างวิธีเรียกใช้เมธอด startWithCompletionHandler: ใน AppDelegate

ตัวอย่าง AppDelegate.m (ข้อความที่ตัดตอนมา)

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    GADMobileAds.sharedInstance().start(completionHandler: nil)

    return true
  }

}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GADMobileAds.sharedInstance startWithCompletionHandler:nil];
  return YES;
}

@end

หากใช้สื่อกลาง คุณอาจต้องรอจนกว่าจะมีการจัดการตัวแฮนเดิลก่อนที่จะโหลดโฆษณา เนื่องจากจะทําให้อะแดปเตอร์สื่อกลางทั้งหมดเริ่มทํางาน

เลือกรูปแบบโฆษณา

เรานําเข้าและเริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่แล้ว และตอนนี้ก็พร้อมที่จะใช้โฆษณาแล้ว AdMob มีรูปแบบโฆษณาต่างๆ มากมาย คุณจึงสามารถเลือกรูปแบบที่ตรงกับประสบการณ์ของผู้ใช้แอปมากที่สุดได้

โฆษณาสี่เหลี่ยมผืนผ้าที่ปรากฏที่ด้านบนหรือด้านล่างของหน้าจออุปกรณ์ โฆษณาแบนเนอร์จะแสดงบนหน้าจอขณะที่ผู้ใช้โต้ตอบกับแอป และจะรีเฟรชโดยอัตโนมัติหลังจากช่วงเวลาหนึ่งๆ ได้ หากคุณเพิ่งเริ่มใช้การโฆษณาบนอุปกรณ์เคลื่อนที่ ก็เป็นวิธีที่ยอดเยี่ยมในการเริ่มต้นใช้งาน

ใช้แบนเนอร์

โฆษณาคั่นระหว่างหน้า

โฆษณาแบบเต็มหน้าจอที่ครอบคลุมอินเทอร์เฟซของแอปจนกว่าผู้ใช้จะปิด สัญญาณเหล่านี้เหมาะสําหรับการหยุดชั่วคราวระหว่างการดําเนินการตามปกติของแอป เช่น ระหว่างเล่นเกมผ่านด่านหรือหลังจากการทํางานเสร็จเท่านั้น

ใช้โฆษณาคั่นระหว่างหน้า

เนทีฟ

โฆษณาที่ปรับแต่งได้ซึ่งตรงกับรูปลักษณ์ของแอป คุณกําหนดสถานที่และตําแหน่งที่จะวางได้เพื่อให้เลย์เอาต์สอดคล้องกับการออกแบบของแอปมากขึ้น

นําไปใช้ Native Ads

ได้รับรางวัลแล้ว

โฆษณาที่ให้รางวัลแก่ผู้ใช้ที่ดูวิดีโอสั้น และโต้ตอบกับโฆษณาและแบบสํารวจที่เล่นได้ เหมาะสําหรับการสร้างรายได้จากผู้ใช้ที่เล่นเกมฟรี

ใช้โฆษณาที่มีการให้รางวัล ใช้โฆษณาที่มีการให้รางวัล (API ใหม่)