Panduan ini ditujukan untuk penayang yang ingin memonetisasi aplikasi iOS dengan AdMob dan tidak menggunakan Firebase. Jika berencana untuk menyertakan Firebase dalam aplikasi Anda (atau Anda sedang mempertimbangkannya), lihat versi AdMob dengan Firebase dalam panduan ini.
Mengintegrasikan Google Mobile Ads SDK ke dalam aplikasi adalah langkah pertama untuk menampilkan iklan dan memperoleh pendapatan. Setelah mengintegrasikan SDK, Anda dapat melanjutkan untuk mengimplementasikan satu atau beberapa format iklan yang didukung.
Prasyarat
- Menggunakan Xcode 13.2.1 atau versi yang lebih tinggi
- Menargetkan iOS 10.0 atau yang lebih tinggi
- Direkomendasikan: Buat akun AdMob dan daftarkan aplikasi.
Mengimpor Mobile Ads SDK
CocoaPods (disarankan)
Cara termudah untuk mengimpor SDK ke dalam project iOS adalah dengan menggunakan CocoaPods. Buka Podfile project dan tambahkan baris ini ke target aplikasi Anda:
pod 'Google-Mobile-Ads-SDK'
Kemudian, dari command line, jalankan:
pod install --repo-update
Jika Anda baru mengenal CocoaPods, lihat dokumentasi resminya untuk info tentang cara membuat dan menggunakan Podfile.
Swift Package Manager
Google Mobile Ads SDK mendukung Swift Package Manager mulai versi 9.0.0. Ikuti langkah-langkah di bawah ini untuk mengimpor paket Swift.
Di Xcode, instal Paket Swift Google Mobile Ads dengan membuka File > Add Packages....
Pada perintah yang muncul, telusuri repositori GitHub Paket Google Mobile Ads Swift:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
Pilih versi Paket Swift Iklan Seluler Google yang ingin Anda gunakan. Untuk project baru, sebaiknya gunakan Versi hingga Next Major.
Setelah selesai, Xcode akan mulai menyelesaikan dependensi paket Anda dan mendownloadnya di latar belakang. Untuk mengetahui detail selengkapnya tentang cara menambahkan dependensi paket, lihat artikel Apple.
Download manual
Download dan ekstrak framework SDK secara langsung, lalu impor framework berikut ke dalam project Xcode Anda:
GoogleAppMeasurement.xcframework
GoogleAppMeasurementIdentitySupport.xcframework
GoogleMobileAds.xcframework
GoogleUtilities.xcframework
nanopb.xcframework
PromisesObjC.xcframework
UserMessagingPlatform.xcframework
Tambahkan flag linker
-ObjC
ke Other Linker Flags di setelan build project Anda:
Memperbarui Info.plist Anda
Update file Info.plist
aplikasi Anda untuk menambahkan dua kunci:
Kunci
GADApplicationIdentifier
dengan nilai string AdMob app ID found in the AdMob UI.Kunci
SKAdNetworkItems
dengan nilaiSKAdNetworkIdentifier
untuk Google (cstr6suwn9.skadnetwork
) dan pembeli pihak ketiga tertentu yang telah memberikan nilai ini ke Google.
Cuplikan lengkap
<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>
Jika Anda belum membuat akun AdMob dan mendaftarkan aplikasi, sekarang adalah saat yang tepat untuk melakukannya.
Menginisialisasi Mobile Ads SDK
Sebelum memuat iklan, panggil metode startWithCompletionHandler:
pada
GADMobileAds.sharedInstance
,
yang menginisialisasi SDK dan memanggil kembali pengendali penyelesaian setelah
inisialisasi selesai (atau setelah waktu tunggu 30 detik). Hal ini hanya perlu dilakukan sekali, idealnya saat peluncuran aplikasi. Anda harus memanggil startWithCompletionHandler:
seawal mungkin.
Berikut adalah contoh cara memanggil metode startWithCompletionHandler:
di AppDelegate
Anda:
Contoh AppDelegate.m (kutipan)
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
Jika Anda menggunakan mediasi, sebaiknya tunggu hingga pengendali penyelesaian dipanggil sebelum memuat iklan, karena hal ini akan memastikan bahwa semua adaptor mediasi diinisialisasi.
Pilih format iklan
Mobile Ads SDK kini diimpor dan diinisialisasi, dan Anda siap untuk menerapkan iklan. AdMob menawarkan sejumlah format iklan berbeda, sehingga Anda dapat memilih salah satu yang paling sesuai dengan pengalaman pengguna aplikasi Anda.
Banner
Iklan kotak yang muncul di bagian atas atau bawah layar perangkat. Iklan Banner tetap ditampilkan di layar saat pengguna berinteraksi dengan aplikasi, dan dapat diperbarui secara otomatis setelah jangka waktu tertentu. Jika periklanan seluler merupakan hal yang baru bagi Anda, iklan Banner adalah pilihan pertama yang baik.
Interstisial
Iklan layar penuh yang menutupi antarmuka aplikasi hingga pengguna menutupnya. Cara ini paling baik digunakan saat jeda alami dalam alur eksekusi aplikasi, seperti di antara level game atau tepat setelah tugas selesai.
Native
Iklan yang dapat disesuaikan, yang cocok dengan tampilan dan nuansa aplikasi Anda. Anda menentukan cara dan lokasi penempatannya, sehingga tata letaknya lebih konsisten dengan desain aplikasi Anda.
Diberikan sebagai reward
Iklan yang memberikan reward kepada pengguna karena telah menonton video singkat serta berinteraksi dengan survei dan iklan yang dapat dimainkan. Bagus untuk memonetisasi pengguna yang tidak dipungut biaya.
Menerapkan Iklan Reward | Menerapkan Iklan Reward (API baru) |