১. ভূমিকা
সর্বশেষ হালনাগাদ: ২৫-০১-২০২১
আপনি যা তৈরি করবেন
এই কোডল্যাবে আপনি শিখবেন, কীভাবে GA4F ব্যবহার করে কাস্টম ইভেন্ট প্রয়োগ করতে হয় এবং ফ্লাটার অ্যাপের জন্য গুগল অ্যাডস-এর মাধ্যমে অ্যাকশন ক্যাম্পেইন চালু করতে হয়।
আমরা একটি সাধারণ কাউন্টার উইজেট সহ ডিফল্ট ফ্লাটার অ্যাপটি ব্যবহার করব। আমরা সম্ভাব্য ব্যবহারকারীদের কাছে আমাদের অ্যাপটির প্রচার করব, যারা সম্ভবত কাউন্টার উইজেটটিতে ক্লিক করবেন।

আপনি যা শিখবেন
- ফ্লাটারে GA4F (Google Analytics for Firebase) কীভাবে ইনিশিয়ালাইজ করবেন
- কাস্টম ইভেন্ট এবং প্যারামিটার কীভাবে তৈরি করবেন
- ফায়ারবেস থেকে গুগল অ্যাডস-এ ইভেন্ট ইম্পোর্ট করার পদ্ধতি
- কাস্টম ইভেন্ট ব্যবহার করে কীভাবে অ্যাকশন ক্যাম্পেইন চালু করবেন
আপনার যা যা লাগবে
- অ্যান্ড্রয়েড স্টুডিও ৩.৬ বা উচ্চতর
- এক্সকোড (আইওএস সমর্থনের জন্য)
- ফায়ারবেস অ্যাকাউন্ট
- গুগল বিজ্ঞাপন অ্যাকাউন্ট
২. একটি নতুন ফ্লাটার প্রজেক্ট শুরু করুন।
একটি সহজ টেমপ্লেটেড ফ্লাটার অ্যাপ তৈরি করুন। এই কোডল্যাবের জন্য আপনি এই স্টার্টার অ্যাপটি পরিবর্তন করবেন।
অ্যান্ড্রয়েড স্টুডিও চালু করুন।
- আপনার যদি কোনো খোলা প্রজেক্ট না থাকে, তাহলে ওয়েলকাম পেজ থেকে ‘স্টার্ট আ নিউ ফ্লাটার অ্যাপ ’ নির্বাচন করুন। অন্যথায়, ‘ফাইল > নিউ > নিউ ফ্লাটার প্রজেক্ট’ নির্বাচন করুন।
- প্রজেক্টের ধরণ হিসেবে ফ্লাটার অ্যাপ্লিকেশন নির্বাচন করুন এবং নেক্সট-এ ক্লিক করুন।
- ফ্লাটার এসডিকে পাথটি এসডিকে-এর অবস্থান নির্দেশ করছে কিনা তা যাচাই করুন। (টেক্সট ফিল্ডটি খালি থাকলে ‘Install SDK’ নির্বাচন করুন।)
- প্রজেক্টের নাম লিখুন এবং নেক্সট-এ ক্লিক করুন।
- অ্যান্ড্রয়েড স্টুডিও দ্বারা প্রস্তাবিত ডিফল্ট প্যাকেজ নামটি ব্যবহার করুন এবং 'Next'-এ ক্লিক করুন।
- শেষ করুন- এ ক্লিক করুন।
- অ্যান্ড্রয়েড স্টুডিও কর্তৃক এসডিকে ইনস্টল এবং প্রজেক্টটি তৈরি হওয়া পর্যন্ত অপেক্ষা করুন।
৩. একটি ফায়ারবেস প্রজেক্ট তৈরি ও সেট আপ করুন।
Firebase ব্যবহার শুরু করতে, আপনাকে একটি Firebase প্রজেক্ট তৈরি ও সেট আপ করতে হবে।
একটি ফায়ারবেস প্রজেক্ট তৈরি করুন
- Firebase- এ সাইন ইন করুন।
Firebase কনসোলে, Add Project (বা Create a project)-এ ক্লিক করুন এবং আপনার Firebase প্রজেক্টটির নাম Firebase-Flutter-Ads অথবা আপনার পছন্দমতো যেকোনো নাম দিন।

- প্রজেক্ট তৈরির অপশনগুলো একে একে দেখুন। অনুরোধ করা হলে Firebase-এর শর্তাবলী মেনে নিন। এই প্রজেক্টের জন্য আপনাকে Google Analytics চালু করতে হবে, কারণ অ্যাকশন ইভেন্ট ট্র্যাক করতে এবং কনভার্সন বিশ্লেষণ করতে আপনার Google Analytics ইভেন্টের প্রয়োজন হবে।

ফায়ারবেস প্রজেক্ট সম্পর্কে আরও জানতে, “ফায়ারবেস প্রজেক্ট বুঝুন” দেখুন।
৪. প্ল্যাটফর্ম-ভিত্তিক ফায়ারবেস কনফিগারেশন (অ্যান্ড্রয়েড)
অ্যান্ড্রয়েড কনফিগার করুন
- Firebase কনসোলে, বাম দিকের নেভিগেশন থেকে Project Overview নির্বাচন করুন, তারপর "Get started by adding Firebase to your app" এর নিচে থাকা Android বোতামটিতে ক্লিক করুন।
আপনি পরবর্তী স্ক্রিনে দেখানো ডায়ালগটি দেখতে পাবেন।

- প্রদান করার জন্য গুরুত্বপূর্ণ মানটি হলো অ্যান্ড্রয়েড প্যাকেজ নেম, যা আপনি পরবর্তী ধাপটি অনুসরণ করে পাবেন।
- আপনার ফ্লাটার অ্যাপ ডিরেক্টরিতে
android/app/src/main/AndroidManifest.xmlফাইলটি খুলুন। -
manifestএলিমেন্টের মধ্যে,packageঅ্যাট্রিবিউটের স্ট্রিং ভ্যালুটি খুঁজুন। এই ভ্যালুটি হলো অ্যান্ড্রয়েড প্যাকেজের নাম (যেমনcom.yourcompany.yourproject)। এই ভ্যালুটি কপি করুন। - Firebase ডায়ালগ বক্সে, কপি করা প্যাকেজ নামটি
Android package nameফিল্ডে পেস্ট করুন। - এখানে আমাদের SHA-1 কী-এর প্রয়োজন নেই, যদি না আপনি গুগল সাইন ইন বা ফায়ারবেস ডাইনামিক লিঙ্ক ব্যবহার করার পরিকল্পনা করেন (উল্লেখ্য যে, এগুলো এই কোডল্যাবের অংশ নয়)। আপনি যদি গুগল প্লে থেকে
in_app_purchaseডেটা ইম্পোর্ট করার পরিকল্পনা করেন, তাহলে আপনাকে পরে কী-টি সেট করতে হবে। - অ্যাপটি নিবন্ধন করুন- এ ক্লিক করুন।
- এরপর Firebase-এ,
google-services.jsonকনফিগারেশন ফাইলটি ডাউনলোড করার জন্য নির্দেশাবলী অনুসরণ করুন।

- আপনার ফ্লাটার অ্যাপ ডিরেক্টরিতে যান, তারপর (এইমাত্র ডাউনলোড করা)
google-services.jsonফাইলটিandroid/appডিরেক্টরিতে সরিয়ে নিন। - ফায়ারবেস কনসোলে ফিরে এসে, বাকি ধাপগুলো এড়িয়ে যান এবং ফায়ারবেস কনসোলের মূল পৃষ্ঠায় ফিরে যান।
- অবশেষে, Firebase দ্বারা তৈরি
google-services.jsonফাইলটি পড়ার জন্য আপনার Google Services Gradle প্লাগইনটির প্রয়োজন হবে। - আপনার IDE বা এডিটরে
android/app/build.gradleফাইলটি খুলুন, তারপর ফাইলটির শেষ লাইন হিসেবে নিম্নলিখিত লাইনটি যোগ করুন:
apply plugin: 'com.google.gms.google-services'
-
android/build.gradleখুলুন, তারপরbuildscriptট্যাগের ভিতরে একটি নতুন ডিপেন্ডেন্সি যোগ করুন:
buildscript {
repositories {
// ...
}
dependencies {
// ...
Classpath 'com.google.gms:google-services:4.3.3'
}
}
- আপনার অ্যাপটি যদি এখনও চালু থাকে, তবে এটি বন্ধ করে পুনরায় তৈরি করুন, যাতে গ্রেডল ডিপেন্ডেন্সিগুলো ইনস্টল করতে পারে।
আপনার অ্যান্ড্রয়েডের জন্য ফ্লাটার অ্যাপ কনফিগার করা শেষ! আইওএস-এর জন্য, আপনি এই কোডল্যাবটি দেখতে পারেন ( ফ্লাটারের জন্য ফায়ারবেস সম্পর্কে জানুন )।
৫. ফ্লাটারে ফায়ারবেস অ্যানালিটিক্স কনফিগার করুন
এই ধাপে, আপনি firebase_analytics নামের Firebase Analytics প্যাকেজটি ব্যবহার করা শুরু করবেন, যেটিতে Firebase Analytics-এর বিভিন্ন ফিচার রয়েছে।
pubspec ফাইলটি একটি ফ্লাটার অ্যাপের অ্যাসেটগুলো পরিচালনা করে। pubspec.yaml ফাইলের dependencies তালিকায় firebase_analytics: ^6.2.0 ( firebase_analytics 6.2.0 বা তার উচ্চতর সংস্করণ) যুক্ত করুন:
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
firebase_analytics: ^6.2.0 # add this line
অ্যান্ড্রয়েড স্টুডিওর এডিটর ভিউতে pubspec দেখার সময়, `Packages get` এ ক্লিক করুন। এটি প্যাকেজটিকে আপনার প্রোজেক্টে নিয়ে আসবে। আপনি কনসোলে নিম্নলিখিতটি দেখতে পাবেন:
flutter packages get
Running "flutter packages get" in startup_namer...
Process finished with exit code 0
Pub get চালালে pubspec.lock ফাইলটিও স্বয়ংক্রিয়ভাবে তৈরি হয়ে যায়, যেখানে প্রজেক্টে যুক্ত হওয়া সমস্ত প্যাকেজ এবং তাদের ভার্সন নম্বরের একটি তালিকা থাকে।
lib/main.dart ফাইলে নতুন প্যাকেজটি ইম্পোর্ট করুন:
import 'package:firebase_analytics/firebase_analytics.dart';
MyApp ক্লাসে, কনস্ট্রাক্টর কল করে FirebaseAnalytics অবজেক্টটি ইনিশিয়েট করুন।
class MyApp extends StatelessWidget {
static FirebaseAnalytics analytics = FirebaseAnalytics();
...
}
এখন আপনি কিছু কাস্টম ইভেন্ট লগ চালু করার জন্য প্রস্তুত!
৬. ফায়ারবেস অ্যানালিটিক্স ব্যবহার করে কাস্টম ইভেন্টগুলো লগ করুন।
আপনি যদি ফ্লাটার অ্যাপে একটি নতুন টেমপ্লেট তৈরি করেন, তাহলে আপনি ডিফল্ট State ক্লাসের ভিতরে একটি _counter ভেরিয়েবল এবং _incrementCounter() মেথড দেখতে পাবেন। এখন, আপনি চান যে অতি উৎসাহী ব্যবহারকারীরা যখন ইনক্রিমেন্ট বাটনটি পাঁচবারের বেশি ক্লিক করবে, তখন কাস্টম ইভেন্টগুলো লগ করা হোক। পরবর্তীতে, আমরা সম্ভাব্য উৎসাহী ব্যবহারকারীদের আকৃষ্ট করার জন্য একটি অ্যাপ ক্যাম্পেইন চালু করব।
প্রথমে, আমরা যে অ্যানালিটিক অবজেক্টগুলো ইনিশিয়ালাইজ করেছি, সেগুলো Stateful উইজেটে পাস করতে চাই। এর জন্য আমরা MyHomePage কনস্ট্রাক্টরে একটি অ্যানালিটিক্স প্যারামিটার যোগ করার মাধ্যমে শুরু করব।
MyHomePage({Key key, this.title, this.analytics}) : super(key: key);
কনস্ট্রাক্টর কল করার সময় আপনাকে একটি অ্যানালিটিক্স প্যারামিটারও যোগ করতে হবে।
home: MyHomePage(
title: 'Flutter Demo Home Page',
analytics: analytics,
),
এখন, আপনি logEvent() মেথড ব্যবহার করে সহজেই ইভেন্ট লগ করতে পারবেন। মেথডটি যোগ করুন এবং _counter ভেরিয়েবলটির মান বাড়িয়ে দিন।
void _incrementCounter() {
setState(() {
_counter++;
//add this
if(_counter > 5) {
widget.analytics.logEvent(name: "clicked_counter");
}
});
}
এখন আপনার অ্যাপটি কাস্টম ইভেন্ট লগ চালু করার জন্য প্রস্তুত!
ইভেন্ট ফায়ার করার জন্য আপনি আগে থেকে তৈরি মেথডগুলোও ব্যবহার করতে পারেন।

এখন সবকিছু প্রস্তুত। আপনার অ্যান্ড্রয়েড স্টুডিওতে 'main.dart' ফাইলটি চালান।
(ঐচ্ছিক) প্যারামিটার ব্যবহার করে ফায়ারবেস অ্যানালিটিক্সে অতিরিক্ত তথ্য পাঠানো
আপনি প্যারামিটারের মাধ্যমে অতিরিক্ত তথ্য পাঠাতে পারেন। আপনার অ্যানালিটিক্স রিপোর্টে রিপোর্টিংয়ের জন্য কাস্টম প্যারামিটার রেজিস্টার করা যেতে পারে । এগুলি অডিয়েন্স ডেফিনিশনে ফিল্টার হিসেবেও ব্যবহার করা যায়, যা প্রতিটি রিপোর্টে প্রয়োগ করা যেতে পারে। যদি আপনার অ্যাপটি একটি BigQuery প্রজেক্টের সাথে লিঙ্ক করা থাকে, তাহলে কাস্টম প্যারামিটারগুলি BigQuery-তেও পাওয়া যায় ( BigQuery Export for Firebase দেখুন)।
আমরা এখানে _counter মানটিকে একটি প্যারামিটার হিসেবে সেট করছি।
void _incrementCounter() {
setState(() {
_counter++;
if(_counter > 5) {
widget.analytics.logEvent(name: "clicked_counter", parameters: {'count' : _counter});
}
});
}
ইভেন্টগুলি পরীক্ষা এবং ডিবাগ করা
কয়েক ঘণ্টার মধ্যেই আপনি আপনার লগ করা ইভেন্টগুলো ফায়ারবেস কনসোলে দেখতে পাবেন। এর জন্য ফায়ারবেস কনসোলে থাকা অ্যানালিটিক্স সেকশন থেকে শুধু ইভেন্টস ট্যাবে ক্লিক করুন। এছাড়াও, ইভেন্টটিতে ক্লিক করে আপনি clicked_counter ইভেন্টের ভেতরের মানগুলোও দেখতে পারেন।

'Mark as conversion' সুইচটি ডানদিকে স্লাইড করে clicked_counter একটি রূপান্তর হিসেবে চিহ্নিত করুন।

ইভেন্টটি যদি কনভার্সন ট্যাবে থাকে, তাহলে আপনি সফলভাবে ইভেন্টটিকে একটি কনভার্সন হিসেবে চিহ্নিত করেছেন। গুগল অ্যাডস এখন ফায়ারবেস থেকে এই ইভেন্টটি ইম্পোর্ট করতে পারবে।
ডিবাগিংয়ের জন্য Firebase DebugView ব্যবহার করুন। আরও বিস্তারিত জানতে, ডিবাগিং ইভেন্ট দেখুন।
৭. গুগল অ্যাডস-এ অ্যানালিটিক্স ইভেন্ট ইম্পোর্ট করা
আপনার Firebase-Flutter সেটআপ সম্পূর্ণ হয়ে গেলে, আপনি অ্যাকশন ইভেন্ট সহ অ্যাপ ক্যাম্পেইন চালু করার জন্য প্রস্তুত। Firebase-কে Google Ads-এর সাথে লিঙ্ক করার মাধ্যমে শুরু করুন। Firebase-কে Google Ads-এর সাথে লিঙ্ক করার ফলে, অ্যাপ ক্যাম্পেইনগুলো Firebase ইভেন্ট ইম্পোর্ট করতে পারে। এই প্রক্রিয়াটি Google Ads-কে তাদের অডিয়েন্স সম্পর্কে আরও জানতে সাহায্য করে অ্যাপ ক্যাম্পেইনগুলোকে বুস্ট করতেও সহায়তা করে।
- প্রজেক্ট ওভারভিউ-এর পাশের বাটনে ক্লিক করে ফায়ারবেস সেটিংস- এ যান।
- ইন্টিগ্রেশন ট্যাবে আপনি গুগল অ্যাডস এবং একটি লিঙ্ক বাটন দেখতে পাবেন। লিঙ্কে ক্লিক করুন এবং তারপরে কন্টিনিউ-তে ক্লিক করুন।

- গুগল অ্যাডস অ্যাকাউন্ট বেছে নিন।
এখন ফায়ারবেসের অংশটি সম্পন্ন হয়েছে।
গুগল অ্যাডস- এ যান।
- লগ ইন করুন এবং কাস্টম ইভেন্টগুলোকে কনভার্সন হিসেবে ইম্পোর্ট করতে টুলস ও সেটিংস > পরিমাপ > কনভার্সন- এ যান।
- নতুন রূপান্তর ক্রিয়া যোগ করতে + বোতামে ক্লিক করুন।

- Google Analytics 4 প্রোপার্টিজ (ফায়ারবেস) বেছে নিন এবং 'চালিয়ে যান'-এ ক্লিক করুন।

- আপনি কনভার্সন হিসেবে চিহ্নিত সমস্ত অ্যানালিটিক্স ইভেন্ট দেখতে পারেন। আমরা আগে যে
clicked_counterইভেন্টটি প্রয়োগ করেছিলাম, সেটি খুঁজুন।

- অ্যাকশনটি চেক করুন, ইম্পোর্ট-এ ক্লিক করুন এবং তারপর কন্টিনিউ-এ ক্লিক করুন।

clicked_counter একটি কনভার্সন অ্যাকশন হিসেবে সেট করার পর, আপনি এমন অ্যাকশন ক্যাম্পেইন চালু করতে পারেন যা সেইসব ব্যবহারকারীদের টার্গেট করবে যারা সম্ভবত ৫ বারের বেশি clicked_counter ইভেন্ট ফায়ার করবে।
৮. ইম্পোর্ট করা ইভেন্ট ব্যবহার করে অ্যাপ অ্যাকশন ক্যাম্পেইন চালু করা
- আপনার বর্তমান অ্যাকাউন্টের ক্যাম্পেইন ট্যাবে যান এবং + বোতামে ক্লিক করে একটি নতুন ক্যাম্পেইন শুরু করুন। [নতুন ক্যাম্পেইন]-এ ক্লিক করুন এবং তারপরে চালিয়ে যান-এ ক্লিক করুন।
- অ্যাপ ইনস্টল অপশনটি ব্যবহার করে একটি অ্যাপ প্রচার অভিযান শুরু করুন।

- অ্যাপের নাম, প্যাকেজ নাম বা প্রকাশকের নাম টাইপ করে আপনার অ্যাপটি খুঁজুন।
- বিডিং বিভাগে, ড্রপডাউন মেনু থেকে ইন-অ্যাপ অ্যাকশন নির্বাচন করুন।
- প্রদত্ত তালিকা থেকে আপনার কাস্টম ইভেন্টটি খুঁজুন। প্রতিটি কাজের জন্য লক্ষ্যমাত্রা খরচ নির্ধারণ করুন এবং অন্য যেকোনো অতিরিক্ত অপশন পূরণ করুন।

- আপনার ক্যাম্পেইনের সেটিংস শেষ করুন।
৯. অভিনন্দন
অভিনন্দন, আপনি সফলভাবে আপনার Firebase এবং Google Ads সংযুক্ত করেছেন! এটি Firebase থেকে ইম্পোর্ট করা ইভেন্টগুলোর মাধ্যমে আপনার ক্যাম্পেইনের পারফরম্যান্স বাড়াতে সাহায্য করবে।
আপনি শিখেছেন
- ফ্লাটারের জন্য ফায়ারবেস অ্যানালিটিক্স কীভাবে কনফিগার করবেন
- ফ্লাটার অ্যাপে ফায়ারবেস অ্যানালিটিক্স ব্যবহার করে কীভাবে কাস্টম ইভেন্ট লগ করবেন।
- কীভাবে ইভেন্ট ইম্পোর্ট করবেন এবং অ্যাকশন ক্যাম্পেইনের জন্য সেগুলো ব্যবহার করবেন।
