আজকের অত্যন্ত প্রতিযোগিতামূলক মোবাইল অ্যাপের ল্যান্ডস্কেপে, কার্যকরভাবে আপনার অ্যাপের ব্যবহারকারীদের আকৃষ্ট করা এবং সময়মতো তথ্য সরবরাহ করা গুরুত্বপূর্ণ।
Firebase ক্লাউড মেসেজিং (FCM) হল Firebase দ্বারা প্রদত্ত একটি শক্তিশালী পুশ বিজ্ঞপ্তি পরিষেবা। এটি আপনার অ্যাপের ব্যবহারকারীদের সাথে সংযোগ স্থাপন এবং তাদের নিযুক্ত রাখার একটি নিরবচ্ছিন্ন উপায় অফার করে৷
এই টিউটোরিয়ালে, আমরা ফ্লটারে এফসিএম-এর ইন্টিগ্রেশন নিয়ে আলোচনা করব। আমরা এর সুবিধাগুলি অন্বেষণ করব এবং কীভাবে এটি ব্যবহারকারীর ব্যস্ততা বাড়াতে এবং অ্যাপের কার্যকারিতা উন্নত করতে পারে তার বাস্তব-বিশ্বের উদাহরণগুলি প্রদর্শন করব৷
Firebase ক্লাউড মেসেজিং (FCM) আপনার সার্ভার এবং ডিভাইসের মধ্যে একটি নির্ভরযোগ্য এবং ব্যাটারি-দক্ষ সংযোগ প্রদান করে। এটি আপনাকে iOS, Android এবং ওয়েবে বিনা খরচে বার্তা এবং বিজ্ঞপ্তিগুলি বিতরণ এবং গ্রহণ করতে দেয়৷
এই টিউটোরিয়ালে, আমরা ব্যাকএন্ড পরিষেবা হিসাবে Firebase ব্যবহার করে Flutter-এ Firebase ক্লাউড মেসেজিং (FCM) সেট আপ এবং ব্যবহার করার প্রক্রিয়াটি অন্বেষণ করব। যদিও মূল ফোকাস হবে অ্যান্ড্রয়েড বাস্তবায়নের উপর, এটি লক্ষণীয় যে প্রক্রিয়াটি iOS এবং Android এর জন্য একই রকম (কিছু কনফিগারেশন পার্থক্য সহ)।
আমরা যা কভার করব তা এখানে:
- কিভাবে ফায়ারবেসে একটি অ্যাপ তৈরি করবেন
- ফ্লাটারে কীভাবে ফায়ারবেস সেট আপ করবেন
- এফসিএম টোকেন ব্যবহার করে পুশ বিজ্ঞপ্তিগুলি কীভাবে প্রয়োগ করবেন
এই টিউটোরিয়ালে, আপনি শিখবেন কিভাবে ফায়ারবেস ব্যবহার করে ফ্লটারে চলমান অ্যাপে একটি সাধারণ বিজ্ঞপ্তি পাঠাতে হয়। চলুন শুরু করা যাক।
ফায়ারবেসে একটি অ্যাপ কীভাবে তৈরি করবেন
আমি শুরু করতে Firebase কনসোলে একটি নতুন প্রকল্প তৈরি করব। আমি প্রজেক্ট সেটআপ, ফায়ারবেস ক্লাউড মেসেজিং কীভাবে কনফিগার করতে হয় এবং আমাদের ফ্লাটার অ্যাপের জন্য প্রয়োজনীয় শংসাপত্র এবং কনফিগারেশন ফাইলগুলি কীভাবে পেতে হয় সেগুলি সহ প্রয়োজনীয় পদক্ষেপগুলি দিয়ে হেঁটে যাব৷
অ্যাপটি তৈরি করার আগে আপনার যদি কোনো অ্যাকাউন্ট না থাকে তাহলে আপনাকে Firebase কনসোলের জন্য সাইন আপ করতে হবে। সাইন আপ করার পরে, একটি প্রকল্প তৈরি করার চেষ্টা করুন৷
ফায়ারবেসে একটি প্রকল্প তৈরি করুন
একটি প্রকল্প তৈরি করতে একটু সময় লাগবে৷
৷
Firebase এ প্রকল্প তৈরি করা হচ্ছে
প্রোজেক্ট তৈরি করার পর, এটি আপনাকে প্রোজেক্ট ড্যাশবোর্ডে রিডাইরেক্ট করবে।
ফায়ারবেস কনসোলে প্রজেক্ট ওভারভিউ
একবার আপনি Firebase কনসোলে প্রোজেক্টটি তৈরি করে ফেললে, আমাদের Flutter অ্যাপ দিয়ে শুরু করার সময় এসেছে।
ফ্লাটারে কিভাবে ফায়ারবেস সেট আপ করবেন
আমি ভিজ্যুয়াল স্টুডিও কোড ব্যবহার করে একটি সাধারণ ফ্লাটার প্রকল্প তৈরি করেছি। আপনি যদি একটি Flutter প্রকল্প নির্মাণের সাথে অপরিচিত হন তবে আপনি আমার আগের টিউটোরিয়ালটি উল্লেখ করতে পারেন। (যদি আপনি ইতিমধ্যে পরিচিত হন, আপনি এই পদক্ষেপটি এড়িয়ে যেতে পারেন।)
Android ডিভাইসে চলমান সহজ ফ্লটার অ্যাপ্লিকেশন
আমাদের Flutter প্রকল্পে Firebase একত্রিত করা যাক। এটি করার জন্য, আমাদের একটি Firebase CLI কমান্ড লাইন টুল প্রয়োজন। আমি ইতিমধ্যে Firebase CLI ইনস্টল করেছি। আপনি যদি এটি না করে থাকেন, আপনি অফিসিয়াল ডকুমেন্টেশন উল্লেখ করতে পারেন।
তারপর Firebase CLI ব্যবহার করে Firebase-এ লগ ইন করতে হবে।
firebase login
FirebaseCLI ব্যবহার করে ফায়ারবেসে লগইন করুন
এটি আপনাকে Firebase-এ লগ ইন করতে ব্রাউজারে নেভিগেট করবে। প্রমাণীকরণ সফলভাবে সম্পন্ন হলে আপনাকে আবার নেভিগেট করা হবে।
সফল লগইন করার পরে, আমাদের FlutterFire CLI ইনস্টল করতে হবে। আমরা ফায়ারবেসের সাথে সংযোগ করতে আমাদের ফ্লাটার অ্যাপগুলি কনফিগার করতে FlutterFire CLI ব্যবহার করতে পারি। FlutterFire CLI সক্রিয় করতে নিম্নলিখিত কমান্ডটি চালান:
dart pub global activate flutterfire_cli
FlutterFire CLI হল একটি কমান্ড-লাইন ইন্টারফেস টুল যা Flutter অ্যাপ্লিকেশনগুলিতে Firebase পরিষেবাগুলির একীকরণকে সহজ করে। এটি আমাদের ফ্লাটার প্রোজেক্টে ফায়ারবেস প্লাগইন যোগ, কনফিগার এবং পরিচালনা করার একটি সুবিধাজনক উপায় প্রদান করে।
FlutterFireCLI ইনস্টল করা হচ্ছে৷
পরবর্তী ধাপ হল firebase_core যোগ করা আমাদের ফ্লাটার প্রকল্পের লাইব্রেরি।
নিম্নলিখিত কমান্ডটি স্বয়ংক্রিয়ভাবে firebase_core যোগ করবে আপনার প্রকল্পের pubspec.yaml নির্ভরতা হিসাবে প্যাকেজ ফাইল করুন এবং pub.dev থেকে প্যাকেজের সর্বশেষ সংস্করণ আনুন . এই কমান্ডটি চালানোর পরে, আপনি firebase_core আমদানি করতে পারেন ডার্ট ফাইলগুলিতে প্যাকেজ করুন এবং আমাদের ফ্লাটার অ্যাপে ফায়ারবেস পরিষেবাগুলি ব্যবহার করুন৷
flutter pub add firebase_core
ফায়ারবেস কোর প্যাকেজ ইনস্টল করা হচ্ছে
flutterfire configure FlutterFire CLI ব্যবহার করে আমাদের Flutter প্রকল্পে Firebase পরিষেবাগুলি কনফিগার করতে কমান্ড ব্যবহার করা হয়। এই কমান্ডটি আমাদের ফায়ারবেস প্রমাণীকরণ, ফায়ারস্টোর, ক্লাউড মেসেজিং এবং অন্যান্য ফায়ারবেস পরিষেবাগুলি সহজে এবং দক্ষতার সাথে সেট আপ করতে সহায়তা করে৷
flutterfire configure
প্রথম ধাপ হল প্রজেক্ট নির্বাচন করা,
Flutter অ্যাপকে Firebase অ্যাপের সাথে কানেক্ট করুন
পরবর্তী প্ল্যাটফর্ম নির্বাচন করা হয়. আমি এখানে অ্যান্ড্রয়েডের জন্য এটি ব্যবহার করছি, তাই আমি অ্যান্ড্রয়েড বেছে নিই৷
৷
প্ল্যাটফর্ম নির্বাচন করা৷
সফল কনফিগারেশনের পরে, ফায়ারবেস অ্যাপ আইডি প্রদর্শিত হবে।
অবশেষে, আমাদের main.dart এ কিছু কোড পরিবর্তন যোগ করতে হবে ফাইল।
নিম্নলিখিত প্যাকেজগুলি আমদানি করুন:
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
main.dart এর প্রধান ফাংশনের ভিতরে Firebase কনফিগারেশন শুরু করতে নিম্নলিখিত কনফিগারেশন যোগ করুন ফাইল।
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
ঠিক আছে, আমরা সফলভাবে আমাদের Flutter অ্যাপে Firebase কনফিগারেশন সম্পন্ন করেছি! আসুন এই মাইলফলক উদযাপন করার জন্য একটি মুহূর্ত নিন। ফায়ারবেস পরিষেবাগুলি কনফিগার করা শক্তিশালী এবং বৈশিষ্ট্য-সমৃদ্ধ অ্যাপ্লিকেশন তৈরির একটি গুরুত্বপূর্ণ পদক্ষেপ৷
এফসিএম টোকেন ব্যবহার করে পুশ বিজ্ঞপ্তি কীভাবে প্রয়োগ করবেন
আমরা পুশ নোটিফিকেশনের জন্য ডিভাইস রেজিস্টার করার প্রক্রিয়া বাস্তবায়ন করব এবং প্রতিটি ডিভাইসে নির্দিষ্ট করা অনন্য FCM টোকেন পুনরুদ্ধার করব। নির্দিষ্ট ডিভাইসে লক্ষ্যযুক্ত বিজ্ঞপ্তি পাঠানোর জন্য এই পদক্ষেপটি অত্যন্ত গুরুত্বপূর্ণ৷
৷আমরা Firebase ক্লাউড মেসেজিং ব্যবহার করে ডিভাইসগুলিতে পুশ বিজ্ঞপ্তি পাঠানোর বাস্তবায়নে ডুব দেব। আমরা কীভাবে ফায়ারবেস কনসোল থেকে বিজ্ঞপ্তি বার্তাগুলিকে গঠন এবং পাঠাতে হয় তা অন্বেষণ করব এবং আমাদের ফ্লাটার অ্যাপের মধ্যে এই বার্তাগুলি কীভাবে পরিচালনা করতে হয় তা প্রদর্শন করব৷
flutter pub add firebase_messaging
Firebse মেসেজিং প্যাকেজ ইনস্টল করা হচ্ছে
এরপর, আমাদের setAutoInitEnabled ট্রিগার করতে হবে আমাদের Flutter অ্যাপে Firebase ক্লাউড মেসেজিং (FCM) এর স্বয়ংক্রিয় সূচনা সক্ষম করার ফাংশন। এর মানে হল যে অ্যাপ শুরু হলে FCM স্বয়ংক্রিয়ভাবে আরম্ভ করবে এবং একটি ডিভাইস টোকেন পুনরুদ্ধার করবে।
main-এ নিম্নলিখিত ফাংশন কল যোগ করুন পদ্ধতি:
import 'package:firebase_messaging/firebase_messaging.dart';
...
...
await FirebaseMessaging.instance.setAutoInitEnabled(true);
আসুন আমাদের ফ্লাটার অ্যাপটি চালাই এবং আমরা বিজ্ঞপ্তি পাই কিনা তা যাচাই করি।
Firebase মেসেজিং কনসোলে নেভিগেট করুন। যেহেতু এটি আমাদের প্রথম বার্তা, তাই আমাদের "আপনার প্রথম প্রচারাভিযান তৈরি করুন" নির্বাচন করতে হবে। "ফায়ারবেস বিজ্ঞপ্তি বার্তা" নির্বাচন করুন এবং "তৈরি করুন" এ ক্লিক করুন।
নমুনা পরীক্ষা মেসেজিং টেমপ্লেট৷
এখন আমাদের বার্তাটির জন্য বিজ্ঞপ্তির শিরোনাম, পাঠ্য এবং নাম লিখতে হবে৷
তারপরে আমরা নীচের কোডটি ব্যবহার করে পরীক্ষার উদ্দেশ্যে ম্যানুয়ালি FCM টোকেন পেতে পারি। একটি অ্যাপ উদাহরণের জন্য বর্তমান নিবন্ধন টোকেন পুনরুদ্ধার করতে, getToken() কল করুন main()-এ পদ্ধতি এই পদ্ধতিটি ব্যবহারকারীকে বিজ্ঞপ্তির অনুমতির জন্য জিজ্ঞাসা করবে যদি বিজ্ঞপ্তির অনুমতি না দেওয়া হয়। অন্যথায়, এটি একটি টোকেন ফেরত দেয় বা কোনো ত্রুটি থাকলে প্রত্যাখ্যান করে।
final fcmToken = await FirebaseMessaging.instance.getToken();
log("FCMToken $fcmToken");
কনসোলে প্রিন্ট করা FCM টোকেন কপি করুন এবং "একটি FCM রেজিস্ট্রেশন টোকেন যোগ করুন" ইনপুট বক্সে পেস্ট করুন৷
FCM টোকেন ব্যবহার করে পরীক্ষার বার্তা পাঠানো হয়েছে
টেস্ট বোতামে ক্লিক করুন। লক্ষ্যযুক্ত ক্লায়েন্ট ডিভাইস (ব্যাকগ্রাউন্ডে অ্যাপ সহ) বিজ্ঞপ্তিটি পাবে।
অ্যান্ড্রয়েড ডিভাইসে পুশ বিজ্ঞপ্তি গৃহীত হয়েছে
হুররে! আমরা আমাদের অ্যান্ড্রয়েড ডিভাইসে বিজ্ঞপ্তি পেয়েছি। আমরা বিজ্ঞপ্তিতে ক্লিক করলে এটি ডিফল্টরূপে অ্যাপটি খুলবে।
যখন আমরা একটি বিজ্ঞপ্তিতে ট্যাপ করি, তখন Android এবং iOS উভয় ক্ষেত্রেই ডিফল্ট আচরণ হল অ্যাপ্লিকেশন খুলতে। আবেদন বাতিল হলে তা শুরু করা হবে। যদি এটি ব্যাকগ্রাউন্ডে থাকে তবে এটিকে সামনে আনা হবে৷
এখানে, আমরা ফায়ারবেস মেসেজিং শুরু করার প্রাথমিক কনফিগারেশন দেখতে পাচ্ছি।
main.dart
import 'package:flutter/material.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'firebase_options.dart';
void main() async {
runApp(const MyApp());
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
final fcmToken = await FirebaseMessaging.instance.getToken();
await FirebaseMessaging.instance.setAutoInitEnabled(true);
log("FCMToken $fcmToken");
}
উপসংহার
এই টিউটোরিয়ালে আমরা ফায়ারবেস ক্লাউড মেসেজিং (এফসিএম) ব্যবহার করে ফ্লটারে পুশ বিজ্ঞপ্তিগুলি বাস্তবায়নের জন্য প্রয়োজনীয় পদক্ষেপগুলি কভার করেছি।
রূপরেখার ধাপগুলি অনুসরণ করে, আপনি Firebase সেট আপ করতে পারেন, এটিকে আপনার ফ্লাটার প্রকল্পে একীভূত করতে পারেন এবং পুশ বিজ্ঞপ্তি কার্যকারিতা বাস্তবায়ন করতে পারেন।
নির্বিঘ্নে বিজ্ঞপ্তি পাঠানো এবং গ্রহণ করার ক্ষমতা সহ, আপনি ব্যবহারকারীর অভিজ্ঞতা বাড়াতে পারেন এবং আপনার অ্যাপের ব্যবহারকারীদের সাথে কার্যকরভাবে জড়িত হতে পারেন। ভবিষ্যতের টিউটোরিয়ালগুলিতে আরও উন্নত বিষয় এবং বৈশিষ্ট্যগুলির জন্য সাথে থাকুন৷
৷আপনি যদি ফ্লটার সম্পর্কে আরও জানতে চান, আমার ইমেল নিউজলেটারে সদস্যতা নিন (https://5minslearn.gogosoon.com/) এবং আমাকে সোশ্যাল মিডিয়াতে অনুসরণ করুন।
বিনামূল্যে কোড শিখুন. freeCodeCamp-এর ওপেন সোর্স পাঠ্যক্রম 40,000-এরও বেশি লোককে ডেভেলপার হিসেবে চাকরি পেতে সাহায্য করেছে। শুরু করুন