বিজ্ঞাপনের জন্য WebView API ব্যবহার করুন

WebView API for Ads, WebViewController ব্যবহার করে অ্যাপের মধ্যে বিজ্ঞাপন থেকে অর্থ উপার্জনের সুযোগ দেয়। যদি আপনি আপনার অ্যাপে WebViewController মাধ্যমে AdSense কোড বা Google Publisher Tag ব্যবহার করে বিজ্ঞাপন প্রদর্শন করেন, তাহলে বিজ্ঞাপন থেকে অর্থ উপার্জন চালু করতে আপনার এই API ব্যবহার করা উচিত। আরও জানতে, AdSense এবং Ad Manager নীতিমালা দেখুন।

  1. Google Mobile Ads Flutter Plugin ব্যবহার করে বিজ্ঞাপনের অনুরোধের মাধ্যমে আয় করুন।

    আপনি Google Mobile Ads Flutter Plugin ব্যবহার করে অ্যাড ম্যানেজারে বিজ্ঞাপনের অনুরোধ পাঠানোর মাধ্যমে এবং মোবাইল অ্যাপের জন্য বিজ্ঞাপন ফরম্যাটগুলো প্রয়োগ করে আপনার অ্যাপ থেকে আয় করতে পারেন।

    আরও জানুন

  2. WebView API ব্যবহার করে বিজ্ঞাপনের মাধ্যমে আয় করুন

    আপনার অ্যাপ যদি অ্যাড ম্যানেজার বা অ্যাডসেন্স থেকে বিজ্ঞাপন পরিবেশনকারী ওয়েব কন্টেন্ট দেখানোর জন্য WebViewController ব্যবহার করে, তাহলে Google Mobile Ads Flutter Plugin সাথে WebViewController অবজেক্টগুলো রেজিস্টার করতে WebView API for Ads ব্যবহার করুন। অ্যাডসেন্স কোড বা গুগল পাবলিশার ট্যাগের জাভাস্ক্রিপ্টই বিজ্ঞাপনের অনুরোধ তৈরি করে এবং পাঠিয়ে দেয়, তাই আপনাকে SDK দিয়ে কোনো বিজ্ঞাপনের অনুরোধ করতে হবে না। মনে রাখবেন যে, এই API ব্যবহার করে শুধুমাত্র মোবাইল ওয়েব এবং ডেস্কটপ ওয়েব ইনভেন্টরি ফরম্যাটগুলোই পাওয়া যায়।

    যদি আপনি একটি WebViewController এর ওয়েব কন্টেন্টের মালিক নাও হন, তবুও বিজ্ঞাপনদাতাদের স্প্যাম থেকে রক্ষা করতে এবং কন্টেন্ট প্রদানকারী ওয়েব পাবলিশারদের জন্য মনিটাইজেশন উন্নত করতে আপনাকে এই API ব্যবহার করতে উৎসাহিত করা হচ্ছে।

মনে রাখবেন যে আপনি একই অ্যাপে যেকোনো একটি বিকল্প, এমনকি উভয়ই করতে পারেন।

এই নির্দেশিকাটি আপনাকে আপনার iOS অ্যাপে বিজ্ঞাপনের জন্য WebView API সংহত করতে সাহায্য করার উদ্দেশ্যে তৈরি।

শুরু করার আগে

WebView API for Ads ব্যবহার শুরু করার আগে, নিম্নলিখিত বিষয়গুলো নিশ্চিত করুন:

  • আপনার অ্যাপে Google Mobile Ads Flutter Plugin ৩.০.০ বা তার উচ্চতর সংস্করণ ব্যবহার করুন।
  • আপনার pubspec.yaml ফাইলে webview_flutter একটি ডিপেন্ডেন্সি হিসেবে যোগ করুন।
  • আপনার অ্যাপে webview_flutter_android এর ৩.৭.০ বা উচ্চতর সংস্করণ যোগ করুন।

অ্যাপ্লিকেশন শনাক্তকারীর জন্য যাচাইকরণ এড়িয়ে যান

অ্যান্ড্রয়েড

APPLICATION_ID এর চেকটি বাইপাস করতে আপনার AndroidManifest.xml ফাইলে নিম্নলিখিত <meta-data> ট্যাগটি যোগ করুন। আপনি যদি এই ধাপটি বাদ দেন, তাহলে অ্যাপ চালু হওয়ার সময় 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"/>

আইওএস

GADApplicationIdentifier এর চেকটি বাইপাস করতে, নিচের key এবং string value দিয়ে Runner/Info.plist ফাইলটি আপডেট করুন। আপনি যদি এই ধাপটি বাদ দেন, তাহলে অ্যাপ চালু হওয়ার সময় 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 Tag ব্যবহৃত হয়, সেগুলোর ইন-অ্যাপ বিজ্ঞাপন মনিটাইজেশন উন্নত করতে নিচে তালিকাভুক্ত ধাপগুলো অনুসরণ করুন:

  1. WebViewController এ জাভাস্ক্রিপ্ট সক্রিয় করুন। তা করতে ব্যর্থ হলে বিজ্ঞাপন লোড নাও হতে পারে।

  2. আপনার ব্যবহারকারীদের বিজ্ঞাপনের অভিজ্ঞতা উন্নত করতে এবং Chrome-এর কুকি নীতির সাথে সামঞ্জস্য রাখতে, আপনার AndroidWebViewController ইনস্ট্যান্সে থার্ড-পার্টি কুকি সক্রিয় করুন।

  3. Google Mobile Ads Flutter Plugin এর registerWebView() মেথডটি কল করে WebViewController ইনস্ট্যান্সটি রেজিস্টার করুন।

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 মাধ্যমে একটি URL লোড করে আপনার ওয়েব কন্টেন্ট প্রদর্শন করতে পারবেন। আমরা আপনাকে আপনার নিজের URL ব্যবহার করার আগে ইন্টিগ্রেশনটি পরীক্ষা করার জন্য এই টেস্ট URL-টি: 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/'));
  }

নিম্নলিখিত শর্তগুলো পূরণ হলে, সফল ইন্টিগ্রেশনের জন্য টেস্ট ইউআরএলটিতে সবুজ স্ট্যাটাস বার দেখানো হয়:

  • Google Mobile Ads Flutter Plugin সাথে সংযুক্ত WebView
  • জাভাস্ক্রিপ্ট সক্রিয় করা হয়েছে
  • থার্ড-পার্টি কুকি কাজ করে (iOS ডিভাইসে প্রত্যাশিত নয়)
  • ফার্স্ট-পার্টি কুকি কাজ করে

আমাদের টেস্ট ইউআরএল-এর সোর্স কোড দেখুন। এরপর আপনি টেস্ট ইউআরএল-টি আপনার ইউআরএল দিয়ে প্রতিস্থাপন করতে পারেন। এছাড়াও, আপনি চার্লস- এর মতো কোনো প্রক্সি টুল ব্যবহার করে আপনার অ্যাপের HTTPS ট্র্যাফিক ক্যাপচার করতে পারেন এবং বিজ্ঞাপনের অনুরোধগুলোতে &scar= প্যারামিটারটি পরীক্ষা করতে পারেন।