-->

Flutter App এ Admob Ads যুক্ত করার সবচেয়ে সহজ উপায় । সম্পূর্ণ গাইড

Flutter App এ Admob Ads যুক্ত করার সবচেয়ে সহজ উপায় । সম্পূর্ণ গাইড | ফ্লাটার (Flutter) অ্যাপে AdMob অ্যাড (Ads) যুক্ত করার জন্য বেশ কিছু ধাপ অনুসরণ করতে হয়। প্ল্যাটফর্ম-নির্দিষ্ট কিছু ফাইল ও আপনার ডার্ট (Dart) কোডে পরিবর্তন আনতে হবে।

Flutter App এ Admob Ads যুক্ত করার সবচেয়ে সহজ উপায়


এখানে সম্পূর্ণ গাইড দেওয়া হলো:

1. AdMob অ্যাকাউন্ট সেটআপ

  • AdMob অ্যাকাউন্ট তৈরি: AdMob-এ সাইন ইন/সাইন আপ করুন।
  • অ্যাপ রেজিস্টার: আপনার অ্যাপটি AdMob-এ রেজিস্টার করুন (Android এবং iOS-এর জন্য আলাদাভাবে)। এর ফলে আপনি একটি AdMob App ID পাবেন, যা প্রতিটি প্ল্যাটফর্মের জন্য ইউনিক হবে (যেমন: ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy)।
  • অ্যাড ইউনিট তৈরি: আপনার অ্যাপের বিজ্ঞাপনের ধরন (Banner, Interstitial, Rewarded ইত্যাদি) অনুযায়ী এক বা একাধিক Ad Unit ID তৈরি করুন (যেমন: ca-app-pub-1234567890123456/1234567890)। টেস্টিংয়ের জন্য টেস্টিং অ্যাড ইউনিট আইডি ব্যবহার করবেন।

2. ফ্লাটার প্রজেক্ট সেটআপ

A. প্যাকেজ যুক্ত করা (pubspec.yaml)

আপনার pubspec.yaml ফাইলে google_mobile_ads প্যাকেজটি যুক্ত করুন:

dependencies:

  flutter:

    sdk: flutter

  google_mobile_ads: ^3.0.0 # লেটেস্ট ভার্সন ব্যবহার করুন

এরপর প্যাকেজটি ডাউনলোড করতে টার্মিনালে flutter pub get রান করুন।

B. প্ল্যাটফর্ম-নির্দিষ্ট কনফিগারেশন

AdMob App ID (ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy) ব্যবহার করে এই ফাইলগুলিতে পরিবর্তন করতে হবে:

Android কনফিগারেশন

  • ফাইল: android/app/src/main/AndroidManifest.xml
  • <application> ট্যাগের মধ্যে আপনার AdMob App ID সহ একটি <meta-data> ট্যাগ যুক্ত করুন।

<manifest>
<application> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> </application> </manifest>

Test Id সহ কোড

<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713"/>

 

iOS কনফিগারেশন

  • ফাইল: ios/Runner/Info.plist
  • আপনার AdMob App ID সহ একটি <key> এবং <string> পেয়ার যুক্ত করুন:


<key>GADApplicationIdentifier</key>
 <string>ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy</string>

3. ডার্ট কোড (Dart Code) দিয়ে অ্যাড যুক্ত করা

A. SDK ইনিশিয়ালাইজ করা

অ্যাপ চালু হওয়ার আগে Google Mobile Ads SDK ইনিশিয়ালাইজ (Initialize) করতে হবে। এটি সাধারণত main() ফাংশনের মধ্যে করা হয়:

import 'package:flutter/material.dart';
import 'package:google_mobile_ads/google_mobile_ads.dart'; // এই প্যাকেজটি ইম্পোর্ট করুন

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  MobileAds.instance.initialize(); // SDK ইনিশিয়ালাইজ করুন
  runApp(const MyApp());
}
B. অ্যাড ডিসপ্লে করা (উদাহরণ: Banner Ad)
অ্যাড ডিসপ্লে করার জন্য আপনার UI-তে AdWidget ব্যবহার করতে হবে।
1. প্রথমে একটি BannerAd অবজেক্ট তৈরি করুন এবং প্ল্যাটফর্ম-ভিত্তিক Ad Unit ID ব্যবহার করুন।

import 'dart:io';
import 'package:flutter/foundation.dart';

final String androidAdUnitId = 'ca-app-pub-xxxxxxxxxxxxxxxx/zzzzzzzzzz'; 
// Android Ad Unit ID
final String iosAdUnitId = 'ca-app-pub-xxxxxxxxxxxxxxxx/qqqqqqqqqq'; 
// iOS Ad Unit ID

String getBannerAdUnitId() {
  if (kDebugMode) { // টেস্টিংয়ের সময় টেস্টিং আইডি ব্যবহার করা ভালো
    if (Platform.isAndroid) {
      return 'ca-app-pub-3940256099942544/6300978111'; // Android টেস্ট আইডি
    } else if (Platform.isIOS) {
      return 'ca-app-pub-3940256099942544/2934735716'; // iOS টেস্ট আইডি
    }
  } else {
    if (Platform.isAndroid) {
      return androidAdUnitId;
    } else if (Platform.isIOS) {
      return iosAdUnitId;
    }
  }
  return ''; // অন্য প্ল্যাটফর্মের জন্য
}

late BannerAd _bannerAd;
bool _isBannerAdLoaded = false;

void _loadBannerAd() {
  _bannerAd = BannerAd(
    adUnitId: getBannerAdUnitId(),
    request: const AdRequest(),
    size: AdSize.banner,
    listener: BannerAdListener(
      onAdLoaded: (ad) {
        setState(() {
          _isBannerAdLoaded = true;
        });
      },
      onAdFailedToLoad: (ad, err) {
        ad.dispose();
        print('BannerAd failed to load: $err');
      },
    ),
  )..load();
}


২. আপনার StatefulWidget-এর initState এ অ্যাড লোড করুন।

@override
void initState() {
  super.initState();
  _loadBannerAd();
}

@override
void dispose() {
  _bannerAd.dispose(); // স্ক্রিন ডিসপোজ করার সময় অ্যাডও ডিসপোজ করুন
  super.dispose();
}

৩। build মেথডে AdWidget ব্যবহার করে অ্যাডটি ডিসপ্লে করুন (সাধারণত Scaffold-এর 
bottomNavigationBar-এ ব্যানার অ্যাড দেখানো হয়)।


@override

Widget build(BuildContext context) {

  return Scaffold(
    appBar:
AppBar(title: const Text('AdMob Example')),

    body: const
Center(child: Text('Your App Content')),

bottomNavigationBar: _isBannerAdLoaded

        ? SizedBox(

            height:
_bannerAd.size.height.toDouble(),

            width: _bannerAd.size.width.toDouble(),

            child:
AdWidget(ad: _bannerAd),

          )

        : null,
  );

}

এই পদ্ধতি অনুসরণ করে আপনি আপনার ফ্লাটার অ্যাপে AdMob অ্যাড যুক্ত করতে পারবেন।  অন্য ধরণের অ্যাড (যেমন Interstitial, Rewarded) যুক্ত করার পদ্ধতিও প্রায় একই, তবে সেগুলোর জন্য আলাদা ক্লাস এবং ইভেন্ট লিসেনার ব্যবহার করতে হয়।

এই ভিডিওতে ফ্লাটার অ্যাপে কীভাবে ব্যানার অ্যাড ইমপ্লিমেন্ট করতে হয় তার পুরো প্রক্রিয়া দেখানো হয়েছে।



How to Implement Banner Ad in Flutter | AdMob Integration Tutorial for Beginners (2025)



Notes:

AdMob-এ ডেভেলপমেন্টের সময় আপনার নিজের আসল ID ব্যবহার করা একদম নিষিদ্ধ। 


গুগল ডেভেলপমেন্ট এবং টেস্টিংয়ের জন্য কিছু নির্দিষ্ট Test ID দিয়ে থাকে।

নিচে অ্যান্ড্রয়েড (Android)  এর জন্য প্রয়োজনীয় টেস্ট আইডিগুলো দেওয়া হলো:

১. Android App ID (AndroidManifest-এ ব্যবহারের জন্য)

এটি অ্যাপের সেটিংস ফাইলে ব্যবহার করতে হয়: ca-app-pub-3940256099942544~3347511713


২. Ad Unit IDs (কোডের ভেতরে ব্যবহারের জন্য) আপনার প্রয়োজন অনুযায়ী নিচের আইডিগুলো ব্যবহার করুন:

অ্যাড এর ধরন

টেস্ট ইউনিট আইডি (Unit ID)

Banner Ad (লিস্টের নিচে দেখানোর জন্য)

ca-app-pub-3940256099942544/6300978111

Interstitial Ad (পুরো স্ক্রিন জুড়ে অ্যাড)

ca-app-pub-3940256099942544/1033173712

Rewarded Ad (পুরস্কার জেতার ভিডিও অ্যাড)

ca-app-pub-3940256099942544/5224354917

App Open Ad (অ্যাপ খোলার সময় অ্যাড)

ca-app-pub-3940256099942544/3419835294





Video- https://www.youtube.com/watch?v=NMG8GO3uQ10&t=17s
You May Like Also Also Like This

Post a Comment

0 Comments