1. সংক্ষিপ্ত বিবরণ

এই কোডল্যাবে, আপনি একটি মুভি রিভিউ অ্যান্ড্রয়েড অ্যাপ তৈরি করতে Firebase Data Connect কে একটি ক্লাউড SQL ডাটাবেসের সাথে একীভূত করবেন। আপনি শিখবেন কিভাবে:
- Firebase Data Connect এর জন্য একটি GraphQL স্কিমা লিখুন
- প্রশ্ন এবং মিউটেশন লিখুন
- আপনার ডেটা সুরক্ষিত রাখতে ব্যবহারকারীর প্রমাণীকরণ বাস্তবায়ন করুন
পূর্বশর্ত
- অ্যান্ড্রয়েড স্টুডিওর সর্বশেষ সংস্করণ
- API লেভেল ২৩ বা তার বেশি সহ অ্যান্ড্রয়েড এমুলেটর
তুমি কি শিখবে
- স্থানীয় এমুলেটরগুলির সাথে ফায়ারবেস ডেটা কানেক্ট কীভাবে সেট আপ করবেন।
- ডেটা কানেক্ট এবং গ্রাফকিউএল ব্যবহার করে কীভাবে একটি ডেটা স্কিমা ডিজাইন করবেন।
- মুভি রিভিউ অ্যাপের জন্য কীভাবে প্রশ্ন এবং মিউটেশন লিখতে হয়।
- কিভাবে Kotlin SDK তৈরি করবেন এবং এটি একটি অ্যান্ড্রয়েড অ্যাপে ব্যবহার করবেন।
- (ঐচ্ছিকভাবে) উৎপাদনে ডেটা কানেক্ট পরিষেবা কীভাবে স্থাপন করবেন।
২. নমুনা প্রকল্পটি সেট আপ করুন
একটি ফায়ারবেস প্রকল্প তৈরি করুন
- আপনার গুগল অ্যাকাউন্ট ব্যবহার করে ফায়ারবেস কনসোলে সাইন ইন করুন।
- একটি নতুন প্রকল্প তৈরি করতে বোতামটি ক্লিক করুন, এবং তারপর একটি প্রকল্পের নাম লিখুন (উদাহরণস্বরূপ,
Movie Review)। - চালিয়ে যান ক্লিক করুন।
- যদি অনুরোধ করা হয়, তাহলে Firebase শর্তাবলী পর্যালোচনা করুন এবং গ্রহণ করুন, এবং তারপর Continue এ ক্লিক করুন।
- (ঐচ্ছিক) Firebase কনসোলে ("Gemini in Firebase" নামে পরিচিত) AI সহায়তা সক্ষম করুন।
- এই কোডল্যাবের জন্য, আপনার গুগল অ্যানালিটিক্সের প্রয়োজন নেই , তাই গুগল অ্যানালিটিক্স বিকল্পটি টগল করে বন্ধ করে দিন ।
- Create project এ ক্লিক করুন, আপনার province করার জন্য অপেক্ষা করুন, এবং তারপর Continue এ ক্লিক করুন।
কোডটি ডাউনলোড করুন
এই কোডল্যাবের জন্য নমুনা কোড ক্লোন করতে নিম্নলিখিত কমান্ডটি চালান। এটি আপনার মেশিনে codelab-dataconnect-android নামে একটি ডিরেক্টরি তৈরি করবে:
git clone https://github.com/firebaseextended/codelab-dataconnect-android.git
যদি আপনার মেশিনে গিট না থাকে, তাহলে আপনি সরাসরি গিটহাব থেকে কোডটি ডাউনলোড করতে পারেন।
Firebase কনফিগারেশন যোগ করুন
- Firebase কনসোলে , বাম দিকের নেভিগেশনে Project Overview নির্বাচন করুন। প্ল্যাটফর্ম নির্বাচন করতে Android বোতামে ক্লিক করুন। প্যাকেজের নাম জিজ্ঞাসা করা হলে
com.google.firebase.example.dataconnectব্যবহার করুন। - Register App-এ ক্লিক করুন এবং
google-services.jsonফাইলটি ডাউনলোড করার জন্য নির্দেশাবলী অনুসরণ করুন, এবং এটি আপনার ডাউনলোড করা কোডেরapp/ডিরেক্টরিতে স্থানান্তর করুন। তারপর Next-এ ক্লিক করুন।
৩. ডেটা কানেক্ট সেট আপ করুন
স্থাপন
স্বয়ংক্রিয় ইনস্টলেশন
codelab-dataconnect-android ডিরেক্টরিতে নিম্নলিখিত কমান্ডটি চালান:
curl -sL https://firebase.tools/dataconnect | bash
এই স্ক্রিপ্টটি আপনার জন্য ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করার এবং একটি ব্রাউজার-ভিত্তিক IDE চালু করার চেষ্টা করে। এই IDE আপনার স্কিমা পরিচালনা করতে এবং আপনার অ্যাপ্লিকেশনে ব্যবহৃত কোয়েরি এবং মিউটেশনগুলি সংজ্ঞায়িত করতে এবং দৃঢ়ভাবে টাইপ করা SDK তৈরি করতে সহায়তা করার জন্য একটি প্রি-বান্ডেলড VS কোড এক্সটেনশন সহ টুলিং সরবরাহ করে।
স্ক্রিপ্টটি চালানোর পরে, VS কোড স্বয়ংক্রিয়ভাবে খুলবে।
দ্রষ্টব্য: যদি আপনার কাছে ইতিমধ্যেই VS কোডের ডেস্কটপ সংস্করণ ইনস্টল করা থাকে, তাহলে স্ক্রিপ্টটি স্বয়ংক্রিয়ভাবে খুলবে। যদি স্ক্রিপ্টটি ব্যর্থ হয়, তাহলে নীচের ম্যানুয়াল ইনস্টলেশন ধাপগুলি ব্যবহার করুন।
ম্যানুয়াল ইনস্টলেশন
- ভিজ্যুয়াল স্টুডিও কোড ইনস্টল করুন
- Node.js ইনস্টল করুন
- VS কোডে,
codelab-dataconnect-androidডিরেক্টরিটি খুলুন। - ভিজ্যুয়াল স্টুডিও কোড মার্কেটপ্লেস থেকে ফায়ারবেস ডেটা কানেক্ট এক্সটেনশনটি ইনস্টল করুন।
প্রকল্পে ডেটা কানেক্ট শুরু করুন
বাম দিকের প্যানেলে, Data Connect VS Code এক্সটেনশন UI খুলতে Firebase আইকনে ক্লিক করুন:
- "Google দিয়ে সাইন ইন করুন" বোতামে ক্লিক করুন। একটি ব্রাউজার উইন্ডো খুলবে; আপনার Google অ্যাকাউন্ট দিয়ে এক্সটেনশনে সাইন ইন করতে নির্দেশাবলী অনুসরণ করুন।

- Connect a Firebase project বোতামে ক্লিক করুন এবং কনসোলে আপনার আগে তৈরি করা প্রকল্পটি নির্বাচন করুন।

Run firebase init বাটনে ক্লিক করুন এবং ইন্টিগ্রেটেড টার্মিনালে ধাপগুলি অনুসরণ করুন।
SDK জেনারেশন কনফিগার করুন
একবার আপনি Run firebase init বোতামে ক্লিক করলে, Firebase Data Connect এক্সটেনশনটি আপনার জন্য একটি dataconnect/ ডিরেক্টরি শুরু করবে।
VS Code-এ, dataconnect/connector/connector.yaml ফাইলটি খুলুন এবং আপনি ডিফল্ট কনফিগারেশনটি পাবেন। এই কোডল্যাবে কোড জেনারেশনটি কল্পনা করা সহজ করার জন্য, connectorId কে movies এ এবং প্যাকেজটি com.google.firebase.example.dataconnect.generated এ পরিবর্তন করুন:
connectorId: movies
generate:
kotlinSdk:
outputDir: ../../app/src/main/java
package: com.google.firebase.example.dataconnect.generated
এই প্রতিটির অর্থ কী তা বোঝার জন্য:
- connectorId - এই সংযোগকারীর জন্য একটি অনন্য নাম।
- outputDir - সেই পথ যেখানে জেনারেট করা ডেটা কানেক্ট SDK সংরক্ষণ করা হবে। এই পথটি connector.yaml ফাইল ধারণকারী ডিরেক্টরির সাথে সম্পর্কিত।
- প্যাকেজ - জেনারেট করা SDK-তে ব্যবহৃত প্যাকেজের নাম।
ফায়ারবেস এমুলেটরগুলি শুরু করুন
ভিএস কোডে, স্টার্ট এমুলেটর বোতামে ক্লিক করুন।

ইন্টিগ্রেটেড টার্মিনালে এমুলেটরটি শুরু হতে দেখা যাবে। যদি এটি সঠিকভাবে শুরু হয়, তাহলে আপনি এইরকম একটি আউটপুট দেখতে পাবেন:

স্থানীয় এমুলেটর ব্যবহার করার জন্য অ্যান্ড্রয়েড অ্যাপটি কনফিগার করুন
- অ্যান্ড্রয়েড স্টুডিও খুলুন।
- অ্যান্ড্রয়েড স্টুডিওর ওয়েলকাম স্ক্রিনে, ওপেন বোতামে ক্লিক করুন এবং
codelab-dataconnect-androidডিরেক্টরিটি নির্বাচন করুন। Gradle সিঙ্ক হওয়ার জন্য অপেক্ষা করুন। - গ্র্যাডেল সিঙ্ক সম্পূর্ণ হয়ে গেলে,
app/src/main/java/com/google/firebase/example/dataconnect/MainActivity.ktফাইলটি খুলুন এবংuseEmulator()কল করুন:
import com.google.firebase.example.dataconnect.generated.MoviesConnector
import com.google.firebase.example.dataconnect.generated.instance
class MainActivity : ComponentActivity() {
...
// Initialize Firebase Data Connect
MoviesConnector.instance.dataConnect.useEmulator("10.0.2.2", 9399)
...
}
৪. স্কিমা নির্ধারণ করুন এবং ডাটাবেসটি আগে থেকে পূরণ করুন
এই বিভাগে, আপনি একটি স্কিমায় মুভি অ্যাপ্লিকেশনের মূল সত্তাগুলির মধ্যে কাঠামো এবং সম্পর্ক সংজ্ঞায়িত করবেন। Movie , User এবং Review এর মতো সত্তাগুলিকে ডাটাবেস টেবিলে ম্যাপ করা হয়, ফায়ারবেস ডেটা কানেক্ট এবং গ্রাফকিউএল স্কিমা নির্দেশিকা ব্যবহার করে সম্পর্ক স্থাপন করা হয়।
মূল সত্তা এবং সম্পর্ক
Movie টাইপে শিরোনাম, ধরণ এবং ট্যাগের মতো গুরুত্বপূর্ণ বিবরণ থাকে, যা অ্যাপটি অনুসন্ধান এবং মুভি প্রোফাইলের জন্য ব্যবহার করে। User টাইপ ব্যবহারকারীর মিথস্ক্রিয়া ট্র্যাক করে, যেমন পর্যালোচনা এবং পছন্দ। Review ব্যবহারকারীদের সিনেমার সাথে সংযুক্ত করে, অ্যাপটিকে ব্যবহারকারী-উত্পাদিত রেটিং এবং প্রতিক্রিয়া দেখাতে দেয়।
ব্যবহারকারীর সারণী
ব্যবহারকারীর ধরণ এমন একটি ব্যবহারকারী সত্তাকে সংজ্ঞায়িত করে যারা পর্যালোচনা রেখে বা সিনেমা পছন্দ করে সিনেমার সাথে ইন্টারঅ্যাক্ট করে।
VS কোডে, dataconnect/schema/schema.gql ফাইলটি খুলুন এবং User টেবিলের সংজ্ঞাটি আনমন্ট করুন (অথবা যোগ করুন):
# Users
# Suppose a user can leave reviews for movies
# user -> reviews is a one to many relationship,
# movie -> reviews is a one to many relationship
# movie <-> user is a many to many relationship
type User @table {
id: String! @col(name: "user_auth")
username: String! @col(name: "username", dataType: "varchar(50)")
# The following are generated by the user: User! field in the Review table
# reviews_on_user
# movies_via_Review
}
সিনেমার টেবিল
মুভি টাইপ একটি মুভি সত্তার মূল কাঠামো নির্ধারণ করে, যার মধ্যে শিরোনাম, ধরণ, মুক্তির বছর এবং রেটিং এর মতো ক্ষেত্র অন্তর্ভুক্ত থাকে।
VS কোডে, dataconnect/schema/schema.gql ফাইলটি খুলুন এবং Movie টেবিলের সংজ্ঞাটি আনমন্ট করুন (অথবা যোগ করুন):
# Movies
type Movie @table {
# The below parameter values are generated by default with @table, and can be edited manually.
# implies directive `@col(name: "movie_id")`, generating a column name
id: UUID! @default(expr: "uuidV4()")
title: String!
imageUrl: String!
genre: String
}
মুভিমেটাডেটা টেবিল
মুভিমেটাডেটা টাইপ মুভি টাইপের সাথে এক-এক সম্পর্ক স্থাপন করে। এতে সিনেমার পরিচালকের মতো অতিরিক্ত ডেটা অন্তর্ভুক্ত থাকে।
VS কোডে, dataconnect/schema/schema.gql ফাইলটি খুলুন এবং MovieMetadata টেবিলের সংজ্ঞাটি আনমন্ট করুন (অথবা যোগ করুন):
# Movie - MovieMetadata is a one-to-one relationship
type MovieMetadata @table {
# @unique indicates a 1-1 relationship
movie: Movie! @unique
# movieId: UUID <- this is created by the above reference
rating: Float
releaseYear: Int
description: String
}
পর্যালোচনা সারণী
রিভিউ টাইপটি রিভিউ এন্টিটিকে প্রতিনিধিত্ব করে এবং ব্যবহারকারী এবং সিনেমার ধরণগুলিকে বহু-থেকে-অনেক সম্পর্কে সংযুক্ত করে (একজন ব্যবহারকারী অনেকগুলি পর্যালোচনা লিখতে পারেন এবং প্রতিটি সিনেমার অনেকগুলি পর্যালোচনা থাকতে পারে)।
VS কোডে, dataconnect/schema/schema.gql ফাইলটি খুলুন এবং Review টেবিলের সংজ্ঞাটি আনমন্ট করুন (অথবা যোগ করুন):
# Reviews
type Review @table(name: "Reviews", key: ["movie", "user"]) {
id: UUID! @default(expr: "uuidV4()")
user: User!
movie: Movie!
rating: Int
reviewText: String
reviewDate: Date! @default(expr: "request.time")
}
স্বয়ংক্রিয়ভাবে তৈরি ক্ষেত্র এবং ডিফল্ট
স্কিমাটি @default(expr: "uuidV4()") এর মতো এক্সপ্রেশন ব্যবহার করে স্বয়ংক্রিয়ভাবে অনন্য আইডি এবং টাইমস্ট্যাম্প তৈরি করে। উদাহরণস্বরূপ, যখন একটি নতুন রেকর্ড তৈরি করা হয় তখন মুভি এবং রিভিউ ধরণের আইডি ক্ষেত্রটি স্বয়ংক্রিয়ভাবে একটি UUID দিয়ে পূর্ণ হয়।
মক ডেটা ঢোকান
স্কিমা সংজ্ঞায়িত করার মাধ্যমে, আপনি এখন পরীক্ষার জন্য ডাটাবেসকে মক ডেটা দিয়ে প্রি-পপুলেট করতে পারেন।
- VS কোডে,
dataconnect/moviedata_insert.gqlখুলুন। নিশ্চিত করুন যে Firebase Data Connect এক্সটেনশনের এমুলেটরগুলি চলছে। - ফাইলের উপরে আপনি একটি Run (local) বোতাম দেখতে পাবেন। আপনার ডাটাবেসে মক মুভি ডেটা সন্নিবেশ করতে এটিতে ক্লিক করুন।

- ডেটা সফলভাবে যোগ করা হয়েছে কিনা তা নিশ্চিত করতে ডেটা কানেক্ট এক্সিকিউশন টার্মিনালটি পরীক্ষা করুন।

ডেটা তৈরি করার পর, ডেটা কানেক্টে কীভাবে কোয়েরি তৈরি করতে হয় তা শিখতে পরবর্তী ধাপে যান।
৫. সিনেমা তালিকাভুক্ত করার জন্য একটি কোয়েরি তৈরি করুন
সিনেমা তালিকাভুক্ত করার জন্য একটি কোয়েরি তৈরি করে শুরু করুন। প্রতিটি সিনেমার জন্য, আপনি আইডি, শিরোনাম, ইমেজ ইউআরএল এবং ধরণ পাবেন।
কোয়েরিটি সংজ্ঞায়িত করুন
VS কোডে, dataconnect/connector/queries.gql ফাইলটি খুলুন এবং ListMovies কোয়েরিটি আনকমেন্ট (অথবা যোগ) করুন:
query ListMovies @auth(level: PUBLIC) {
movies {
id
title
imageUrl
genre
}
}
নতুন কোয়েরিটি পরীক্ষা করতে, আপনার স্থানীয় ডাটাবেসের বিরুদ্ধে কোয়েরিটি কার্যকর করতে রান (স্থানীয়) বোতামে ক্লিক করুন। ডাটাবেস থেকে মুভিগুলির তালিকা ডেটা কানেক্ট এক্সিকিউশন টার্মিনালের "ফলাফল" বিভাগের অধীনে প্রদর্শিত হওয়া উচিত।

অ্যান্ড্রয়েড অ্যাপ থেকে এটি কল করুন
এখন যেহেতু আপনি ডেটা কানেক্ট এমুলেটরে কোয়েরিটি পরীক্ষা করেছেন, এখন এটি অ্যাপে যুক্ত করার সময়।
অ্যান্ড্রয়েড স্টুডিওতে, app/src/main/java/com/google/firebase/example/dataconnect/MoviesScreen.kt ফাইলটি খুলুন এবং গ্রিড ফর্ম্যাটে সিনেমার তালিকা প্রদর্শনের জন্য নিম্নলিখিত কোডটি যোগ করুন:
import com.google.firebase.example.dataconnect.generated.ListMoviesQuery
import com.google.firebase.example.dataconnect.generated.MoviesConnector
import com.google.firebase.example.dataconnect.generated.execute
import com.google.firebase.example.dataconnect.generated.instance
@Composable
fun MoviesScreen(
onMovieClicked: (id: String) -> Unit
) {
var movies by remember { mutableStateOf(emptyList<ListMoviesQuery.Data.MoviesItem>()) }
LaunchedEffect(Unit) {
// Queries need to be executed in a coroutine context
try {
movies = MoviesConnector.instance.listMovies.execute().data.movies
} catch (e: Exception) {
// Will be done at a later step
}
}
LazyVerticalGrid(GridCells.Adaptive(150.dp)) {
items(movies) { movie ->
MovieCard(
movieId = movie.id.toString(),
movieTitle = movie.title,
movieImageUrl = movie.imageUrl,
movieGenre = movie.genre,
onMovieClicked = {
onMovieClicked(movie.id.toString())
}
)
}
}
}
অ্যাপটি চালান
অ্যান্ড্রয়েড স্টুডিওতে, অ্যান্ড্রয়েড এমুলেটরে অ্যাপটি চালু করতে রান বোতামে ক্লিক করুন।
অ্যাপটি চালু হয়ে গেলে, আপনার একটি স্ক্রিন দেখতে হবে যা দেখতে এরকম হবে:

৬. সিনেমার বিবরণের প্রশ্ন তৈরি করুন
এখন যেহেতু অ্যাপটি সিনেমা তালিকাভুক্ত করতে পারে, আসুন প্রতিটি সিনেমার বিবরণ দেখানোর জন্য একটি কোয়েরি তৈরি করি।
কোয়েরিটি সংজ্ঞায়িত করুন
VS কোডে, dataconnect/connector/queries.gql ফাইলটি খুলুন এবং GetMovieById কোয়েরিটি আনকমেন্ট করুন (অথবা যোগ করুন):
# Get movie by id
query GetMovieById($id: UUID!) @auth(level: PUBLIC) {
movie(id: $id) {
id
title
imageUrl
genre
metadata: movieMetadata_on_movie {
rating
releaseYear
description
}
reviews: reviews_on_movie {
id
reviewText
reviewDate
rating
user {
id
username
}
}
}
}
অ্যান্ড্রয়েড অ্যাপ থেকে এটি কল করুন
অ্যান্ড্রয়েড স্টুডিওতে, app/src/main/java/com/google/firebase/example/dataconnect/MovieDetailScreen.kt ফাইলটি খুলুন এবং নিম্নলিখিত কোডটি যোগ করুন:
importcom.google.firebase.example.dataconnect.generated.GetMovieByIdQuery
importcom.google.firebase.example.dataconnect.generated.MoviesConnector
importcom.google.firebase.example.dataconnect.generated.execute
importcom.google.firebase.example.dataconnect.generated.instance
@Composable
fun MovieDetailScreen(
movieId: String
) {
var movie by remember { mutableStateOf<GetMovieByIdQuery.Data.Movie?>(null) }
LaunchedEffect(Unit) {
movie = MoviesConnector.instance.getMovieById.execute(
UUID.fromString(movieId)
).data.movie
}
if (movie == null) {
LoadingScreen()
} else {
MovieDetails(
movieTitle = movie!!.title,
movieImageUrl = movie!!.imageUrl,
movieGenre = movie!!.genre,
movieRating = movie!!.metadata?.rating,
movieReleaseYear = movie!!.metadata?.releaseYear,
movieDescription = movie!!.metadata?.description,
)
}
}
অ্যাপটি চালান
অ্যান্ড্রয়েড স্টুডিওতে, অ্যান্ড্রয়েড এমুলেটরে অ্যাপটি চালু করতে রান বোতামে ক্লিক করুন।
৭. ব্যবহারকারীদের সন্নিবেশ করার জন্য একটি মিউটেশন তৈরি করুন
এখন যেহেতু অ্যাপটি ডেটা প্রদর্শন করতে সক্ষম, তাই অ্যাপ থেকে নতুন ডেটা যোগ করার সময় এসেছে। এটি নিরাপদে করার জন্য, আপনার Firebase Authentication ব্যবহার করা উচিত।
এই কোডল্যাবের উদ্দেশ্যে, অ্যাপটি ব্যবহারকারীদের সাইন ইন করার জন্য বেনামী প্রমাণীকরণ ব্যবহার করে, তবে আরও নিরাপদ অ্যাপের জন্য, ইমেল/পাসওয়ার্ড প্রমাণীকরণ বা একটি ফেডারেটেড পরিচয় প্রদানকারীর মতো একটি ভিন্ন প্রমাণীকরণ পদ্ধতি ব্যবহার করার কথা বিবেচনা করুন।
মিউটেশনের সংজ্ঞা দাও
VS কোডে, dataconnect/connector/mutations.gql ফাইলটি খুলুন এবং UpsertUser কোয়েরিটি আনকমেন্ট (অথবা যোগ) করুন:
# Upsert (update or insert) a user's username based on their auth.uid
mutation UpsertUser($username: String!) @auth(level: USER) {
user_upsert(
data: {
id_expr: "auth.uid"
username: $username
}
)
}
অ্যান্ড্রয়েড অ্যাপ থেকে এটি কল করুন
অ্যান্ড্রয়েড স্টুডিওতে, app/src/main/java/com/google/firebase/example/dataconnect/MainActivity.kt ফাইলটি খুলুন এবং মিউটেশনটি কল করুন:
import com.google.firebase.example.dataconnect.generated.execute
LaunchedEffect(Unit) {
// If there's no user signed in, sign in an anonymous user
if (firebaseAuth.currentUser == null) {
firebaseAuth.signInAnonymously().await()
val newUsername = getRandomUsername()
MoviesConnector.instance.upsertUser.execute(newUsername)
}
}
অ্যাপটি চালান
অ্যান্ড্রয়েড স্টুডিওতে, অ্যান্ড্রয়েড এমুলেটরে অ্যাপটি চালু করতে রান বোতামে ক্লিক করুন।
৮. অভিনন্দন
অভিনন্দন, আপনি সফলভাবে একটি অ্যান্ড্রয়েড অ্যাপে Firebase Data Connect যোগ করেছেন!
এখন আপনি ডেটা কানেক্ট সেট আপ, কোয়েরি এবং মিউটেশন তৈরি এবং ব্যবহারকারীর প্রমাণীকরণ পরিচালনা করার জন্য প্রয়োজনীয় মূল পদক্ষেপগুলি জানেন।
এরপর কি?
- মূল্য নির্ধারণ সম্পর্কে আরও জানুন
- অপারেশন সুরক্ষিত করার বিষয়ে আরও জানুন
- উৎপাদনে স্থাপন করুন (পরবর্তী বিভাগ)
- ভেক্টর সাদৃশ্য অনুসন্ধান কীভাবে করতে হয় তা শিখুন
ঐচ্ছিক: উৎপাদনে স্থাপন করুন
এখন পর্যন্ত এই অ্যাপটি শুধুমাত্র Firebase এমুলেটর ব্যবহার করেছে। যদি আপনি এই অ্যাপটিকে একটি বাস্তব Firebase প্রকল্পে কীভাবে স্থাপন করবেন তা শিখতে চান, তাহলে পরবর্তী ধাপে এগিয়ে যান।
৯. (ঐচ্ছিক) আপনার অ্যাপটি স্থাপন করুন
এখন পর্যন্ত এই অ্যাপটি সম্পূর্ণ স্থানীয়, সমস্ত ডেটা Firebase এমুলেটর স্যুটে রয়েছে। এই বিভাগে আপনি শিখবেন কিভাবে আপনার Firebase প্রকল্পটি কনফিগার করবেন যাতে এই অ্যাপটি উৎপাদনে কাজ করতে পারে।
ফায়ারবেস প্রমাণীকরণ সক্ষম করুন
Firebase কনসোলে, Authentication বিভাগে যান এবং Get started এ ক্লিক করুন। Sign-in method ট্যাবে নেভিগেট করুন এবং providers থেকে Anonymous Sign-in বিকল্পটি নির্বাচন করুন।
বেনামী সাইন-ইন পদ্ধতি সক্রিয় করুন এবং সংরক্ষণ করুন এ ক্লিক করুন।
Firebase Data Connect স্কিমা স্থাপন করুন
গুরুত্বপূর্ণ: যদি আপনি প্রথমবারের মতো আপনার প্রোজেক্টে স্কিমা স্থাপন করেন, তাহলে এই প্রক্রিয়াটি একটি ক্লাউড SQL PostgreSQL ইনস্ট্যান্স তৈরি করবে, যা প্রায় 15 মিনিট সময় নিতে পারে। ক্লাউড SQL ইনস্ট্যান্স প্রস্তুত না হওয়া এবং Firebase Data Connect এর সাথে ইন্টিগ্রেটেড না হওয়া পর্যন্ত আপনি এটি স্থাপন করতে পারবেন না।
- Firebase Data Connect VS Code এক্সটেনশন UI-তে, Deploy to production এ ক্লিক করুন।
- আপনাকে স্কিমা পরিবর্তনগুলি পর্যালোচনা করতে এবং সম্ভাব্য ধ্বংসাত্মক পরিবর্তনগুলি অনুমোদন করতে হতে পারে। আপনাকে নিম্নলিখিতগুলি করতে বলা হবে:
-
firebase dataconnect:sql:diffব্যবহার করে স্কিমার পরিবর্তনগুলি পর্যালোচনা করুন - যখন আপনি পরিবর্তনগুলি নিয়ে সন্তুষ্ট হন, তখন
firebase dataconnect:sql:migrateদ্বারা শুরু হওয়া প্রবাহ ব্যবহার করে সেগুলি প্রয়োগ করুন।
-
আপনার ক্লাউড SQL for PostgreSQL ইনস্ট্যান্স চূড়ান্ত ডিপ্লয় করা স্কিমা এবং ডেটা সহ আপডেট করা হবে। আপনি Firebase কনসোলে স্থিতি পর্যবেক্ষণ করতে পারেন।
এখন আপনি Firebase Data Connect প্যানেলে Run (Production) এ ক্লিক করতে পারেন, ঠিক যেমনটি আপনি স্থানীয় এমুলেটরগুলির সাথে করেছিলেন, উৎপাদন পরিবেশে ডেটা যোগ করতে।