הגדרה של Google Mobile Ads SDK

בחירת פלטפורמה: Android iOS Unity Flutter Android (Legacy)

כדי להציג מודעות ולהרוויח הכנסות, צריך לשלב את Google Mobile Ads SDK באפליקציית iOS. כדי להכין את הפרויקט, מייבאים ומפעילים את Google Mobile Ads SDK לפני שמבקשים מודעות.

אם אתם כוללים את Firebase באפליקציית iOS, כדאי לעיין במאמר תחילת העבודה עם AdMob בפרויקט iOS.

במדריך הזה מוסבר איך לייבא ולהפעיל את Google Mobile Ads SDK ואיך לבחור פורמט מודעה.

דרישות מוקדמות

לפני שממשיכים, חשוב לוודא שיש לכם:

  • משתמשים ב-Xcode מגרסה 16.0 ומעלה.
  • יעד iOS מגרסה 13.0 ואילך.

ייבוא של Google Mobile Ads SDK

כדי לייבא את Google Mobile Ads SDK, צריך לבצע את הפעולות באחד מהקטעים הבאים:

Swift Package Manager

כדי להוסיף תלות בחבילה לפרויקט, פועלים לפי השלבים הבאים:

  1. פותחים את Xcode.
  2. עוברים אל File > Add Package Dependencies...‎ (קובץ > הוספת תלות בחבילה...).
  3. מתקינים את חבילת Google Mobile Ads SDK Swift.

  4. בהנחיה שמופיעה, מחפשים את מאגר Google Mobile Ads Swift Package GitHub:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  5. בוחרים את הגרסה של Google Mobile Ads SDK Swift Package שרוצים להשתמש בה. לפרויקטים חדשים, מומלץ להשתמש באפשרות עד הגרסה הגדולה הבאה.

CocoaPods

כדי להשתמש ב-CocoaPods, פועלים לפי השלבים הבאים:

  1. פותחים את ה-Podfile של הפרויקט ומוסיפים את השורה הזו להגדרת ה-build של האפליקציה target:

    pod 'Google-Mobile-Ads-SDK'
  2. בטרמינל, מריצים את הפקודה:

    pod install --repo-update

הורדה ידנית

כדי להוריד את Google Mobile Ads SDK באופן ידני:

  1. הורדה Google Mobile Ads SDK.
  2. מחילוץ חבילת googlemobileadssdkios.zip.
  3. בפרויקט Xcode, מוסיפים את המסגרות הבאות:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  4. בהגדרות הכלליות של היעד, עוברים אל Frameworks, Libraries, and Embedded Content (מסגרות, ספריות ותוכן מוטמע).

  5. מוודאים שהגדרתם את GoogleMobileAds.xcframework ואת UserMessagingPlatform.xcframework להטמעה וחתימה.

  6. בהגדרות הבנייה של הפרויקט:

    • מוסיפים את הנתיב /usr/lib/swift אל Runpath Search Paths.
    • מוסיפים את הדגל -ObjC של הכלי Linker אל Other Linker Flags (דגלים אחרים של הכלי Linker).

עדכון הקובץ Info.plist

בקובץ Info.plist של האפליקציה, מוסיפים את המפתחות הבאים:

דוגמה מלאה

<key>GADApplicationIdentifier</key>
<!-- Sample AdMob 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 במזהה האפליקציה ב-AdMob. במהלך הבדיקה, משתמשים במזהה האפליקציה לדוגמה שמוצג בדוגמה הקודמת.

אם עדיין לא יצרתם חשבון AdMob ורשמתם אפליקציה, עכשיו זה הזמן לעשות את זה.

אתחול Google Mobile Ads SDK

לפני טעינת המודעות, מאתחלים את Google Mobile Ads SDK על ידי קריאה לשיטה start() מהמאפיין GADMobileAds.sharedInstance. בשיטה הזו מופעל handler של השלמה אחרי שמתאמי הגישור 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), בבריטניה או בשווייץ, אתם צריכים להגדיר דגלים ספציפיים לבקשה. אם אתם צריכים להגדיר דגלים ספציפיים לבקשה, הקפידו להגדיר את הדגלים לפני האתחול של Google Mobile Ads SDK. פרטים נוספים מופיעים במאמר בנושא טירגוט.

בחירת פורמט מודעה

אחרי שמייבאים את Google Mobile Ads SDK, אפשר לבחור פורמט מודעה להטמעה.

ב-AdMob אפשר להשתמש בפורמטים הבאים של מודעות:

פורמט מודעה תיאור מאמרי עזרה
מודעת באנר הצגת מודעות מלבניות בחלק מהפריסה של האפליקציה. המודעה הזו מתעדכנת אוטומטית במרווחי זמן קבועים. המשתמשים רואים את המודעות האלה מדי פעם כשהם נשארים באותו מסך. הגדרת מודעות באנר
מעברון יחידות של מודעות מעברון משמשות להצגה של מודעות במסך מלא באפליקציה. צריך למקם אותן בנקודות עצירה ומעבר טבעיות בממשק של האפליקציה, כמו אחרי השלמת שלב באפליקציית משחקים. מודעות מעברון
מותאמת מאפשרת לכם להתאים אישית נכסים, כמו כותרות וקריאות לפעולה, באפליקציות שלכם. כשמתאימים אישית את המודעה, יוצרים מודעות שמתאימות לעיצוב החזותי של האפליקציה. טעינה של מודעה מותאמת
ההטבה הופעלה המשתמשים מקבלים תגמולים באפליקציה, כמו מטבעות או נקודות, בתמורה למשחק, למילוי סקר או לצפייה בסרטון. אפשר להגדיר תגמולים ליחידות של מודעות ולציין את ערכי התגמולים ואת הפריטים שהמשתמשים יקבלו. מודעות מתגמלות
מודעת מעברון מתגמלת מודעה מסוג חדש שמופיעה באופן אוטומטי בנקודות מעבר טבעיות באפליקציה ומאפשרת לכם להציע תגמולים, כמו מטבעות או תוספת חיים. מודעות מעברון מתגמלות
מודעה בפתיחת אפליקציה המודעה מופיעה כשמשתמשים פותחים את האפליקציה או חוזרים אליה. המודעה מוצגת כשכבת-על במסך הטעינה של האפליקציה. מודעות בפתיחת אפליקציה