«میانای برنامهسازی کاربردی وبنما برای آگهیها» امکان درآمدزایی از آگهی درونبرنامهای را بااستفاده از
WebViewController فراهم میکند.
اگر محتوای وبی را نمایش میدهید که آگهیها را با
کد AdSense یا
برچسب ناشر Google
در برنامهتان ازطریق WebViewController پیادهسازی میکند، باید از این API برای فعال کردن درآمدزایی از آگهیها استفاده کنید. برای کسب اطلاعات بیشتر، خطمشیهای AdMob را ببینید.
- با درخواست آگهی با Google Mobile Ads Flutter Plugin درآمدزایی کنید
با درخواست آگهی از AdMob با Google Mobile Ads Flutter Plugin ازطریق پیادهسازی قالبهای آگهی برای برنامه تلفن همراه میتوانید از برنامهتان درآمدزایی کنید.
- بااستفاده از «میانای برنامهسازی کاربردی وبنما برای آگهیها» درآمدزایی کنید
اگر برنامهتان از
WebViewControllerبرای نمایش محتوای وبی که از Ad Manager یا AdSense آگهی ارائه میکند استفاده میکند، از «میانای برنامهسازی کاربردی وبنما برای آگهیها» برای ثبت کردن اشیاWebViewControllerدر Google Mobile Ads Flutter Plugin استفاده کنید. JavaScript در کد AdSense یا برچسب ناشر Google درخواستهای آگهی را میسازد و ارسال میکند، بنابراین نیازی نیست با «کیت توسعه نرمافزار» درخواست آگهی ایجاد کنید. بهخاطر داشته باشید که فقط وب تلفن همراه و وب رایانه قالبهای فضای آگهی بااستفاده از این API دردسترس هستند.اگر مالک محتوای وب در
WebViewControllerنیستید، همچنان توصیه میشود از این API استفاده کنید تا به محافظت از تبلیغکنندگان دربرابر هرزنامه و بهبود درآمدزایی برای ناشران وبی که محتوا را ارائه کردهاند کمک کنید.
توجه داشته باشید که میتوانید هریک از این گزینهها یا حتی هر دو را در یک برنامه انجام دهید.
این راهنما برای کمک به شما در ادغام کردن «میانای برنامهسازی کاربردی وبنما برای آگهیها» در برنامه iOS شما درنظر گرفته شده است.
قبلاز شروع
قبلاز شروع استفاده از «میانای برنامهسازی کاربردی وبنما برای آگهیها»، مطمئن شوید که موارد زیر را انجام دادهاید:
- از Google Mobile Ads Flutter Plugin برای افزایه Flutter با نسخه ۳.۰.۰ یا بالاتر در برنامهتان استفاده کنید.
webview_flutterرا بهعنوان وابستگی در فایلpubspec.yamlاضافه کنید.webview_flutter_androidبا نسخه ۳.۷.۰ یا بالاتر را به برنامهتان اضافه کنید.
بررسی شناسه برنامه دور زده میشود
Android
برچسب <meta-data> زیر را در فایل AndroidManifest.xml اضافه کنید تا
از بررسی APPLICATION_ID رد شوید. اگر این مرحله را انجام ندهید،
Google Mobile Ads Flutter Plugin ممکن است
IllegalStateException
را در شروع برنامه ایجاد کند.
<!-- Bypass APPLICATION_ID check for WebView API for Ads -->
<meta-data
android:name="com.google.android.gms.ads.INTEGRATION_MANAGER"
android:value="webview"/>
iOS
فایل Runner/Info.plist را با کلید و مقدار رشته زیر بهروز کنید تا
بررسی GADApplicationIdentifier را دور بزنید. اگر این مرحله را انجام ندهید،
Google Mobile Ads Flutter Plugin ممکن است هنگام شروع برنامه GADInvalidInitializationException
نشان دهد.
<!-- Bypass GADApplicationIdentifier check for WebView API for Ads -->
<key>GADIntegrationManager</key>
<string>webview</string>
ثبت WebViewController
برای بهبود درآمدزایی از آگهی در برنامه در
WebViewController که از کد AdSense یا برچسبهای Google Publisher استفاده میکند، مراحل
فهرستشده در زیر را دنبال کنید:
«جاوا اسکریپت» را در
WebViewControllerفعال کنید. انجام ندادن این کار میتواند باعث شود آگهیها بار نشوند.برای بهبود تجربه آگهی کاربران و هماهنگی با خطمشی کوکی Chrome، کوکیهای طرف سوم را در نمونه
AndroidWebViewControllerفعال کنید.نمونه
WebViewControllerرا با فراخوانی روشregisterWebView()ارائهشده توسط Google Mobile Ads Flutter Plugin ثبت کنید.
import 'package:google_mobile_ads/google_mobile_ads.dart';
import 'package:webview_flutter/webview_flutter.dart';
import 'package:webview_flutter_android/webview_flutter_android.dart';
@override
class WebViewExampleState extends State<WebViewExample> {
late final WebViewController controller;
@override
void initState() {
super.initState();
createWebView();
}
void createWebView() async {
controller = WebViewController();
// 1. Enable JavaScript in the web view.
await controller.setJavaScriptMode(JavaScriptMode.unrestricted);
// 2. Enable third-party cookies for Android.
if (controller.platform is AndroidWebViewController) {
AndroidWebViewCookieManager cookieManager = AndroidWebViewCookieManager(
const PlatformWebViewCookieManagerCreationParams());
await cookieManager.setAcceptThirdPartyCookies(
controller.platform as AndroidWebViewController, true);
}
// 3. Register the web view.
await MobileAds.instance.registerWebView(controller);
}
}
بار کردن نشانی وب
اکنون میتوانید نشانی وب را بار کنید و محتوای وب خود را ازطریق WebViewController نمایش دهید.
توصیه میکنیم این نشانی وب آزمایشی را بار کنید:
https://google.github.io/webview-ads/test/ تا پیشاز استفاده از نشانی وب خودتان، یکپارچهسازی را آزمایش کنید. اگر «جاوا اسکریپت» فعال نباشد، صفحه وب خطا نشان میدهد.
import 'package:google_mobile_ads/google_mobile_ads.dart';
import 'package:webview_flutter/webview_flutter.dart';
import 'package:webview_flutter_android/webview_flutter_android.dart';
@override
class WebViewExampleState extends State<WebViewExample> {
late final WebViewController controller;
@override
void initState() {
super.initState();
createWebView();
}
void createWebView() async {
controller = WebViewController();
// 1. Enable JavaScript in the web view.
await controller.setJavaScriptMode(JavaScriptMode.unrestricted);
// 2. Enable third-party cookies for Android.
if (controller.platform is AndroidWebViewController) {
AndroidWebViewCookieManager cookieManager = AndroidWebViewCookieManager(
const PlatformWebViewCookieManagerCreationParams());
await cookieManager.setAcceptThirdPartyCookies(
controller.platform as AndroidWebViewController, true);
}
// 3. Register the web view.
await MobileAds.instance.registerWebView(controller);
// 4. Load the URL.
await controller.loadRequest(Uri.parse('https://google.github.io/webview-ads/test/'));
}
اگر شرایط زیر برقرار باشد، نشانی وب آزمایش نوارهای وضعیت سبز را برای یکپارچهسازی موفق نشان میدهد:
-
WebViewبه Google Mobile Ads Flutter Plugin متصل شد - جاوا اسکریپت فعال است
- کوکیهای طرف سوم کار میکنند (در دستگاههای iOS انتظار نمیرود)
- کوکیهای طرف اول کار میکنند
کد منبع
نشانی وب آزمایشی ما را مشاهده کنید. سپس میتوانید نشانی وب آزمایشی را با نشانی وب خودتان جایگزین کنید. همچنین میتوانید از ابزار پراکسی مثل Charles برای ضبط ترافیک HTTPS برنامه و بازرسی درخواستهای آگهی برای پارامتر &scar= استفاده کنید.
