Untuk menayangkan iklan dan memperoleh pendapatan, integrasikan Google Mobile Ads SDK for React Native ke dalam aplikasi React Native Anda. Panduan ini membahas cara menginstal dan melakukan inisialisasi Google Mobile Ads SDK for React Native, serta memilih format iklan.
Prasyarat
Sebelum melanjutkan, dapatkan hal berikut:
- React Native 0.85.0 atau yang lebih baru.
- Akun AdMob dan ID aplikasi. Untuk mendapatkan ID aplikasi, lihat Menyiapkan aplikasi di AdMob.
Item Android berikut:
- Android API level 24 atau yang lebih baru.
- Versi terbaru Android Studio.
- Plugin Android Gradle (AGP) versi 8.0 atau yang lebih baru.
Item iOS berikut:
- iOS versi 13.0 atau yang lebih baru.
- Xcode versi 16.0 atau yang lebih baru dan alat command line diaktifkan.
- CocoaPods
Instal Google Mobile Ads SDK for React Native
Untuk menginstal Google Mobile Ads SDK for React Native, lakukan hal berikut:
- Download folder
gma-sdk-react-nativedari Google Drive. Ekstrak file ZIP di direktori terpisah di luar direktori project kerja Anda. Proses ini dapat menghindari konflik dengan file konfigurasi project Anda.
Di root project Anda, buat direktori
local_packages/.Dalam direktori ini, salin file
mobile-ads-0.1.0.tgz:mkdir -p local_packages cp EXTRACT_DIR/gma-sdk-react-native/google-mobile-ads/mobile-ads-0.1.0.tgz local_packages/Ganti EXTRACT_DIR dengan jalur ke direktori tempat Anda mengekstrak arsip.
Instal paket dengan pengelola paket pilihan Anda:
npm
npm install ./local_packages/mobile-ads-0.1.0.tgzbenang
yarn add ./local_packages/mobile-ads-0.1.0.tgz
Mengonfigurasi aplikasi Anda
Untuk mengonfigurasi aplikasi Anda dengan dependensi platform, tambahkan ID aplikasi AdMob ke file app.json root project Anda.
Untuk pengujian, gunakan contoh ID aplikasi AdMob yang ditampilkan dalam contoh berikut:
{
"name": "APP_NAME",
"displayName": "APP_NAME",
"googleMobileAds": {
"android_app_id": "ca-app-pub-3940256099942544~3347511713",
"ios_app_id": "ca-app-pub-3940256099942544~1458002511"
}
}
Selama waktu build, Google Mobile Ads SDK for React Native menambahkan properti android_app_id
ke file AndroidManifest.xml dan properti ios_app_id
dalam file Info.plist yang di-build sebagai kunci GADApplicationIdentifier.
Untuk opsi khusus platform atau konfigurasi manual, pilih salah satu platform berikut:
Android
Jika Anda mengelola beberapa konfigurasi build atau mengintegrasikan React Native
ke dalam aplikasi Android yang ada, tambahkan ID aplikasi AdMob Anda di
elemen <application> file AndroidManifest.xml project Anda,
bukan file app.json:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application>
<!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="SAMPLE_APP_ID"
tools:replace="android:value"/>
</application>
</manifest>
Gradle otomatis me-resolve dependensi Android selama waktu build.
iOS
Selesaikan langkah berikut:
Instal dependensi CocoaPods dari direktori
ios/project Anda:pod install --repo-updateAtau, instal dependensi CocoaPods dari direktori root project Anda:
npx pod-installPenautan otomatis CocoaPods mengonfigurasi skrip fase build Xcode yang menambahkan properti
ios_app_iddari fileapp.jsondalam fileInfo.plistyang Anda bangun.Di file
Info.plistaplikasi Anda, tambahkan kunciSKAdNetworkItemsdi elemen<dict>untuk Googlecstr6suwn9.skadnetworkdan pilih pembeli pihak ketiga.Contoh berikut menunjukkan file
Info.plistlengkap yang berisi arraySKAdNetworkItemsyang diperlukan:Contoh lengkap
<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>
Melakukan inisialisasi Google Mobile Ads SDK for React Native
Sebelum memuat iklan, panggil metode initialize untuk
melakukan inisialisasi Google Mobile Ads SDK for React Native. Panggil metode initialize sekali saat peluncuran aplikasi,
seperti di komponen App.tsx root Anda.
Contoh berikut melakukan inisialisasi Google Mobile Ads SDK for React Native:
import {InitializationStatus, initialize} from '@google/mobile-ads';
import {useEffect, useState} from 'react';
import {Text, View} from 'react-native';
/**
* Root application component demonstrating Google Mobile Ads SDK initialization.
*/
export function App() {
const [isInitialized, setIsInitialized] = useState<boolean>(false);
useEffect(() => {
// Initialize the Google Mobile Ads SDK.
initialize({}, (status: InitializationStatus) => {
console.log('Mobile Ads SDK initialized successfully:', status);
setIsInitialized(true);
});
}, []);
return (
<View>
<Text>
{isInitialized ? 'Mobile Ads SDK Ready' : 'Initializing SDK...'}
</Text>
</View>
);
}
Pilih format iklan
Setelah menginisialisasi Google Mobile Ads SDK for React Native, Anda dapat menerapkan iklan. AdMob menawarkan format iklan berikut:
| Format | Deskripsi | Dokumentasi |
|---|---|---|
| Layar pembuka aplikasi | Muncul saat pengguna membuka atau beralih kembali ke aplikasi Anda, ditempatkan di layar pemuatan atau layar pembuka. | Menyiapkan iklan di layar pembuka aplikasi |
| Interstisial | Iklan layar penuh yang menutupi antarmuka aplikasi host. Iklan ini muncul pada titik transisi alami dalam alur aplikasi, seperti di antara aktivitas atau selama waktu jeda antarlevel dalam game. | Menyiapkan iklan interstisial |
| Reward | Iklan layar penuh yang memberikan reward kepada pengguna karena telah menonton iklan video atau berinteraksi dengan iklan yang dapat dimainkan. | Menyiapkan iklan reward |
| Interstisial reward | Format iklan berinsentif yang memungkinkan Anda menawarkan reward untuk iklan yang muncul secara otomatis selama transisi alami dalam aplikasi. | Menyiapkan iklan interstisial reward |