1. ভূমিকা
বিজ্ঞাপনগুলি আপনার অ্যাপের সামগ্রিক ব্যবহারকারীর অভিজ্ঞতার একটি গুরুত্বপূর্ণ অংশ। ভাল বিজ্ঞাপন বাস্তবায়ন আপনার সামগ্রিক অ্যাপ অভিজ্ঞতা উন্নত করতে এবং এমনকি ব্যবহারকারীর ধারণ এবং ব্যস্ততা উন্নত করতে সাহায্য করতে পারে। উদাহরণস্বরূপ, পুরস্কৃত বিজ্ঞাপনগুলি আপনাকে অ্যাপ-মধ্যস্থ মুদ্রা বা ভিডিও বিজ্ঞাপন দেখার জন্য আইটেম দিয়ে ব্যবহারকারীদের পুরস্কৃত করতে সক্ষম করে, যাতে ব্যবহারকারীরা নতুন উচ্চতায় পৌঁছাতে পারে যেখানে অন্যথায় তারা আটকে যেতে পারে এবং মন্থন করতে পারে।
যাইহোক, একটি চমৎকার বিজ্ঞাপন অভিজ্ঞতা তৈরি করা সহজ নয়। আপনার মনে প্রশ্ন থাকতে পারে: কত ঘন ঘন আপনি এই বিজ্ঞাপনগুলি দেখাবেন? কোথায় এবং কখন আপনি তাদের দেখাতে হবে? পুরস্কার কি হওয়া উচিত? দুর্ভাগ্যবশত, উত্তরটি অ্যাপ থেকে অ্যাপে এবং প্লেসমেন্ট থেকে প্লেসমেন্টে আলাদা। কোনো এক-আকার-ফিট-সব উত্তর নেই।
Firebase, AdMob-এর জন্য Google Analytics এবং Firebase অফার করে এমন আরও বেশ কিছু শক্তিশালী কিন্তু সহজে ব্যবহারযোগ্য টুলের সাহায্যে, ডেটা চালিত উপায়ে আপনার অ্যাপটিকে সূক্ষ্ম টিউন করা অনেক সহজ এবং আরও সুগম হয়েছে। আজ, আমরা আপনাকে দেখাব কিভাবে আপনি শুরু করতে পারেন!
আপনি কি নির্মাণ করবেন
এই কোডল্যাবটি তিনটি কোডল্যাবের মধ্যে প্রথম যা আপনাকে Awesome Drawing Quiz নামে একটি অ্যাপ তৈরি করার মাধ্যমে গাইড করবে, এমন একটি গেম যা খেলোয়াড়দের অঙ্কনের নাম অনুমান করতে দেয়৷ এটি প্রদর্শন করবে কিভাবে আপনি আপনার গেমে পুরস্কৃত বিজ্ঞাপন এবং ফায়ারবেস পরিষেবাগুলি অন্তর্ভুক্ত করতে পারেন৷
এই কোডল্যাবে, আপনি কিছু গুরুত্বপূর্ণ অ্যাপ ইভেন্ট রেকর্ড করতে Firebase-এর জন্য Google Analytics সংহত করবেন। এছাড়াও, আপনি শিখবেন কিভাবে ফায়ারবেস কনসোলে দেখানো অ্যাপ বিশ্লেষণগুলি পড়তে হয়।
আপনি কি শিখবেন
- কিভাবে আপনার অ্যাপে ফায়ারবেসের জন্য Google Analytics সেটআপ করবেন
- অ্যাপ ইভেন্টগুলি কীভাবে রেকর্ড করবেন
- ফায়ারবেস কনসোলে দেখানো অ্যাপ বিশ্লেষণ কীভাবে পড়বেন
আপনি কি প্রয়োজন হবে
- ইউনিটি 2018.4.4f1 বা উচ্চতর
- Xcode 10 বা উচ্চতর (iOS-এর লক্ষ্য তৈরি করতে)
- একটি Google অ্যাকাউন্ট
- আপনার ডিভাইসের সাথে সংযোগ করার জন্য একটি USB কেবল সহ Android 5.0+ এর একটি পরীক্ষামূলক ডিভাইস, অথবা Play Store/Google API সমর্থন করে এমন একটি সিস্টেম চিত্র সহ AVD(Android ভার্চুয়াল ডিভাইস) চালিত একটি Android এমুলেটর
- একটি iOS ডিভাইস বা একটি সিমুলেটর যা iOS 8.0 বা উচ্চতর চলমান
AdMob-এর সাথে আপনার অভিজ্ঞতার স্তরকে আপনি কীভাবে রেট করবেন?
ফায়ারবেসের সাথে আপনার অভিজ্ঞতার স্তরকে আপনি কীভাবে মূল্যায়ন করবেন?
2. সেটআপ উন্নয়ন পরিবেশ
কোডটি ডাউনলোড করুন
এই কোডল্যাবের জন্য সমস্ত কোড ডাউনলোড করতে নিম্নলিখিত বোতামে ক্লিক করুন:
ডাউনলোড করা জিপ ফাইলটি আনপ্যাক করুন। এটি admob-firebase-codelabs-unity-master
নামে একটি রুট ফোল্ডার আনপ্যাক করবে।
...অথবা কমান্ড লাইন থেকে GitHub সংগ্রহস্থল ক্লোন করুন।
$ git clone https://github.com/googlecodelabs/admob-firebase-codelabs-unity
সংগ্রহস্থলে নিম্নরূপ চারটি ফোল্ডার রয়েছে:
- 101-বেস — শুরু করার কোড যা আপনি এই কোডল্যাবে তৈরি করবেন।
- 101-complete_and_102-base — এই কোডল্যাবের জন্য সম্পূর্ণ কোড এবং 102 কোডল্যাবের জন্য স্টার্টার।
- 102-সম্পূর্ণ — 102 কোডল্যাবের জন্য সম্পূর্ণ কোড।
প্রয়োজনীয় ফাইল প্রস্তুত করুন
অসাধারন অঙ্কন ক্যুইজটি বেশ কয়েকটি ওপেন-সোর্স কোড ব্যবহার করে, যা প্রকল্পটি সংকলন এবং চালানোর জন্য প্রয়োজন।
টার্মিনাল খুলুন, এবং রিপোজিটরি রুট ডিরেক্টরিতে যান। তারপর, প্রজেক্টে প্রয়োজনীয় ফাইল কপি করতে টার্মিনাল থেকে ./gradlew :prepareThirdPartyFiles
( gradlew.bat :prepareThirdPartyFiles
) চালান।
স্টার্টার অ্যাপ আমদানি করুন
ইউনিটি চালু করুন, স্বাগত স্ক্রিনে "খুলুন" নির্বাচন করুন। তারপর আপনার ডাউনলোড করা কোড থেকে 101-বেস ডিরেক্টরি নির্বাচন করুন।
আপনার এখন ইউনিটিতে প্রকল্পটি খোলা উচিত।
3. পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট সেটআপ করুন (ঐচ্ছিক)
স্টার্টার অ্যাপে ইতিমধ্যেই আপনার সুবিধার জন্য একটি ডেডিকেটেড পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট অন্তর্ভুক্ত রয়েছে। আপনি যদি আপনার AdMob অ্যাকাউন্টের অধীনে একটি নতুন একটি তৈরি করতে না চান তবে আপনি এই ধাপটি এড়িয়ে যাওয়ার জন্য সম্পূর্ণ স্বাধীন ৷
অ্যান্ড্রয়েডের জন্য সেটআপ
আপনার অ্যাকাউন্টে একটি নতুন AdMob অ্যাপ তৈরি করতে, অনুগ্রহ করে নিম্নলিখিত নির্দেশাবলী অনুসরণ করুন:
- AdMob কনসোলে যান।
- অ্যাপস মেনু থেকে, " অ্যাপ যোগ করুন " এ ক্লিক করুন।
- "আপনি কি গুগল প্লে বা অ্যাপ স্টোরে আপনার অ্যাপটি প্রকাশ করেছেন" জিজ্ঞাসা করা হলে, " না" উত্তর দিন।
- অ্যাপটির নাম দিন "অসাধারণ অঙ্কন কুইজ, " প্ল্যাটফর্ম হিসাবে "Android" চয়ন করুন, তারপরে " যোগ করুন " এ ক্লিক করুন৷
একবার আপনি আপনার অ্যাকাউন্টে একটি AdMob অ্যাপ তৈরি করার পরে, একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে নীচে বর্ণিত পদক্ষেপগুলি অনুসরণ করুন৷
- AdMob ফ্রন্টএন্ডে Apps মেনুতে ক্লিক করুন, তারপর অ্যাপ তালিকা থেকে "Awesome Drawing Quiz" নির্বাচন করুন।
- বিজ্ঞাপন ইউনিট মেনুতে ক্লিক করুন, তারপর একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে বিজ্ঞাপন ইউনিট যোগ করুন-এ ক্লিক করুন।
- বিজ্ঞাপন ফর্ম্যাটের জন্য পুরস্কৃত নির্বাচন করুন।
- আপনার পছন্দ অনুযায়ী বিজ্ঞাপন ইউনিটের নাম দিন। তারপরে, পুরষ্কারের পরিমাণ 1 এ সেট করুন এবং পুরষ্কার আইটেমটিকে "ইঙ্গিত" এ সেট করুন (এগুলি হল অ্যাপটি বর্তমানে ব্যবহারকারীদের দেওয়া পুরস্কার)। এবং একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে বিজ্ঞাপন ইউনিট তৈরি করুন ক্লিক করুন৷
- সফলভাবে তৈরি হয়ে গেলে আপনি নিচের মত নির্দেশাবলী দেখতে পাবেন।
- ইউনিটি প্রজেক্টে ফিরে যান এবং আপনার আগের ধাপে তৈরি করা অ্যাডমব অ্যাপ আইডি এবং বিজ্ঞাপন ইউনিট আইডি কনস্ট্যান্টগুলি আপডেট করুন।
Ads/AdManager.cs
namespace AwesomeDrawingQuiz.Ads {
public class AdManager {
public const string APP_ID_ANDROID = "YOUR_ADMOB_APP_ID";
...
#elif UNITY_ANDROID
private const string APP_ID = APP_ID_ANDROID;
public const string AD_UNIT_ID = "<YOUR_AD_UNIT_ID>";
...
}
}
iOS এর জন্য সেটআপ করুন
আপনার অ্যাকাউন্টে একটি নতুন AdMob অ্যাপ তৈরি করতে, অনুগ্রহ করে নিম্নলিখিত নির্দেশাবলী অনুসরণ করুন:
- AdMob কনসোলে যান।
- অ্যাপস মেনু থেকে, " অ্যাপ যোগ করুন " এ ক্লিক করুন।
- "আপনি কি গুগল প্লে বা অ্যাপ স্টোরে আপনার অ্যাপটি প্রকাশ করেছেন" জিজ্ঞাসা করা হলে, " না" উত্তর দিন।
- "Awesome Drawing Quiz" অ্যাপটির নাম দিন, প্ল্যাটফর্ম হিসেবে "iOS" বেছে নিন, তারপর " Add " এ ক্লিক করুন।
একবার আপনি আপনার অ্যাকাউন্টে একটি AdMob অ্যাপ তৈরি করার পরে, একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে নীচে বর্ণিত পদক্ষেপগুলি অনুসরণ করুন৷
- AdMob ফ্রন্টএন্ডে Apps মেনুতে ক্লিক করুন, তারপর অ্যাপ তালিকা থেকে "Awesome Drawing Quiz" নির্বাচন করুন।
- বিজ্ঞাপন ইউনিট মেনুতে ক্লিক করুন, তারপর একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে বিজ্ঞাপন ইউনিট যোগ করুন-এ ক্লিক করুন।
- বিজ্ঞাপন ফর্ম্যাটের জন্য পুরস্কৃত নির্বাচন করুন।
- আপনার পছন্দ অনুযায়ী বিজ্ঞাপন ইউনিটের নাম দিন। তারপরে, পুরষ্কারের পরিমাণ 1 এ সেট করুন এবং পুরষ্কার আইটেমটিকে "ইঙ্গিত" এ সেট করুন (এগুলি হল অ্যাপটি বর্তমানে ব্যবহারকারীদের দেওয়া পুরস্কার)। এবং একটি নতুন পুরস্কৃত ভিডিও বিজ্ঞাপন ইউনিট তৈরি করতে বিজ্ঞাপন ইউনিট তৈরি করুন ক্লিক করুন৷
- সফলভাবে তৈরি হয়ে গেলে আপনি নিচের মত নির্দেশাবলী দেখতে পাবেন।
- ইউনিটি প্রজেক্টে ফিরে যান এবং আপনার আগের ধাপে তৈরি করা অ্যাডমব অ্যাপ আইডি এবং বিজ্ঞাপন ইউনিট আইডি কনস্ট্যান্টগুলি আপডেট করুন।
Ads/AdManager.cs
namespace AwesomeDrawingQuiz.Ads {
public class AdManager {
public const string APP_ID_IOS = "YOUR_ADMOB_APP_ID";
...
#elif UNITY_IOS
private const string APP_ID = APP_ID_IOS;
public const string AD_UNIT_ID = "<YOUR_AD_UNIT_ID>";
...
}
}
4. Google মোবাইল বিজ্ঞাপন ইউনিটি প্লাগইন যোগ করুন
প্লাগইন আমদানি করুন
ইউনিটি অ্যাপে AdMob বিজ্ঞাপন পরিবেশন করতে, আপনাকে প্রোজেক্টে Google মোবাইল বিজ্ঞাপন ইউনিটি প্লাগইন যোগ করতে হবে।
- Google Mobile Ads Unity Plugin 3.18.1 প্যাকেজ ডাউনলোড করুন। (মনে রাখবেন যে এই কোডল্যাব প্লাগইনের অন্য সংস্করণের সাথে সামঞ্জস্যপূর্ণ নাও হতে পারে)
- অসাধারণ অঙ্কন কুইজ ইউনিটি প্রকল্পে। প্রকল্পে, সম্পদ > আমদানি প্যাকেজ > কাস্টম প্যাকেজে নেভিগেট করুন।
- আপনি যে প্রকল্পটি ডাউনলোড করেছেন তাতে GoogleMobileAds.unitypackage আমদানি করুন।
AdMob অ্যাপ আইডি কনফিগার করুন
ইউনিটি এডিটরে, মেনু থেকে সম্পদ > Google মোবাইল বিজ্ঞাপন > সেটিংস নির্বাচন করুন।
Google AdMob বিভাগের অধীনে সক্রিয় চেকবক্সে ক্লিক করে AdMob সক্ষম করুন৷ তারপর AdMob অ্যাপ আইডিটি নিম্নরূপ লিখুন:
- অ্যান্ড্রয়েড:
ca-app-pub-3940256099942544~3048611032
- iOS:
ca-app-pub-3940256099942544~2753522596
5. ফায়ারবেস প্রকল্প সেটআপ করুন
Firebase কনসোল থেকে একটি নতুন প্রকল্প তৈরি করুন
- ফায়ারবেস কনসোলে যান।
- প্রকল্প যোগ করুন নির্বাচন করুন এবং আপনার প্রকল্পের নাম দিন "অসাধারণ অঙ্কন কুইজ"।
ইউনিটি অ্যাপ যোগ করুন
- আপনার নতুন প্রকল্পের ওভারভিউ স্ক্রীন থেকে, আপনার ইউনিটি অ্যাপে Firebase যোগ করুন ক্লিক করুন।
- আইওএস অ্যাপ চেকবক্স হিসাবে নিবন্ধন করুন।
- iOS বান্ডেল আইডিটি এইভাবে লিখুন: com.codelab.awesomedrawingquiz.unity
- একটি অ্যাপের ডাকনাম প্রদান করুন যেমন: অসাধারণ অঙ্কন কুইজ (ইওএস-এ ইউনিটি)
- অ্যান্ড্রয়েড অ্যাপ হিসেবে নিবন্ধন করুন চেকবক্স চেক করুন।
- অ্যান্ড্রয়েড প্যাকেজের নাম লিখুন এইভাবে: com.codelab.awesomedrawingquiz.unity
- একটি অ্যাপের ডাকনাম প্রদান করুন যেমন: অসাধারণ অঙ্কন ক্যুইজ (অ্যান্ড্রয়েডে ইউনিটি)
- অ্যান্ড্রয়েড এবং আইওএস উভয় অ্যাপ নিবন্ধন করতে নিবন্ধন অ্যাপ নির্বাচন করুন।
ইউনিটি প্রজেক্টে ফায়ারবেস কনফিগারেশন ফাইল যোগ করুন
এরপরে, আপনাকে একটি স্ক্রীন প্রম্পট করা হবে যেখানে আপনি একটি কনফিগারেশন ফাইল ডাউনলোড করতে পারবেন যাতে আপনার অ্যাপের জন্য প্রয়োজনীয় সমস্ত Firebase মেটাডেটা রয়েছে। google-service.json এবং GoogleService-Info.plist ফাইলটি ডাউনলোড করুন, তারপরে উভয়কেই ইউনিটি প্রকল্পে সম্পদ ফোল্ডার।
Firebase Analytics SDK যোগ করুন
- Firebase Unity SDK 5.5.0 ডাউনলোড করুন এবং এটিকে সুবিধাজনক জায়গায় আনজিপ করুন।
- অসাধারণ অঙ্কন কুইজ ইউনিটি প্রকল্পটি খুলুন, সম্পদ > আমদানি প্যাকেজ > কাস্টম প্যাকেজে নেভিগেট করুন।
- আনজিপ করা SDK থেকে, Remote Config SDK (
dotnet4/FirebaseAnalytics.unitypackage
) আমদানি করুন। - ইম্পোর্ট ইউনিটি প্যাকেজ উইন্ডোতে, আমদানি ক্লিক করুন।
6. Firebase প্রকল্পের সাথে AdMob লিঙ্ক করুন
Firebase-এ আপনার অ্যাপ লিঙ্ক করার জন্য নিচের ধাপগুলি সম্পূর্ণ করুন।
- https://apps.admob.com- এ আপনার AdMob অ্যাকাউন্টে সাইন ইন করুন।
- সাইডবারে Apps এ ক্লিক করুন।
- "অসাধারণ অঙ্কন কুইজ" নির্বাচন করুন। আপনি যদি সাম্প্রতিক অ্যাপ্লিকেশানগুলির তালিকায় এটি দেখতে না পান, তাহলে আপনি AdMob-এ যোগ করা সমস্ত অ্যাপ্লিকেশানগুলির একটি তালিকা অনুসন্ধান করতে সমস্ত অ্যাপ্লিকেশানগুলি দেখুন ক্লিক করতে পারেন৷
- সাইডবারে অ্যাপ সেটিংসে ক্লিক করুন।
- Firebase লিঙ্কে ক্লিক করুন।
- "একটি বিদ্যমান ফায়ারবেস প্রকল্পের সাথে লিঙ্ক করুন এবং একটি নতুন ফায়ারবেস অ্যাপ তৈরি করুন" বিকল্পটি নির্বাচন করুন৷ তারপর ড্রপডাউন মেনু থেকে "Awesome Drawing Quiz" প্রকল্পটি নির্বাচন করুন।
- একবার আপনি "চালিয়ে যান" বোতামে ক্লিক করলে, আপনি "সফলভাবে লিঙ্ক করা হয়েছে" বার্তা দেখতে পাবেন। শেষ করতে "সম্পন্ন" বোতামে ক্লিক করুন।
একবার আপনি আপনার AdMob অ্যাপটিকে Firebase প্রোজেক্টের সাথে লিঙ্ক করলে, এটি AdMob এবং Firebase কনসোলে নিম্নরূপ কিছু অতিরিক্ত বৈশিষ্ট্য আনলক করবে:
রাজস্ব কার্ড (AdMob)
রাজস্ব কার্ড থেকে, আপনি একটি একক জায়গায় সমস্ত সম্ভাব্য রাজস্ব স্ট্রিমগুলিকে সামগ্রিকভাবে দেখতে পারেন৷ সমর্থিত রাজস্ব উত্স নিম্নরূপ:
- AdMob (আনুমানিক)
- মধ্যস্থিত বিজ্ঞাপন নেটওয়ার্ক (পর্যবেক্ষিত)
- অ্যাপ-মধ্যস্থ কেনাকাটা
- ই-কমার্স কেনাকাটা
ব্যবহারকারীর মেট্রিক্স কার্ড (AdMob)
ব্যবহারকারীর মেট্রিক্স কার্ড থেকে, আপনি দেখতে পারেন কীভাবে আপনার বিজ্ঞাপনের অভিজ্ঞতায় পরিবর্তনগুলি ব্যবহারকারীর আচরণকে প্রভাবিত করতে পারে।
পুরস্কৃত বিজ্ঞাপন প্রতিবেদন (AdMob)
পুরস্কৃত বিজ্ঞাপনের প্রতিবেদন বিভিন্ন ধরনের মেট্রিক্স অফার করে যা প্রকাশকদের বুঝতে সাহায্য করবে যে ব্যবহারকারীরা তাদের পুরস্কৃত বিজ্ঞাপনের সাথে কীভাবে ইন্টারঅ্যাক্ট করছেন।
মোট রাজস্ব কার্ড (ফায়ারবেস)
আপনি আপনার AdMob অ্যাপটিকে Firebase-এর সাথে লিঙ্ক করার পরে, Firebase ড্যাশবোর্ডে মোট রাজস্ব কার্ড অ্যাপ-মধ্যস্থ কেনাকাটা এবং ই-কমার্স কেনাকাটা সহ AdMob থেকে আয় প্রদর্শন করবে।
বিজ্ঞাপন ইভেন্ট রিপোর্টিং (ফায়ারবেস)
বিজ্ঞাপন-নির্দিষ্ট ইভেন্টগুলি (ক্লিক, ইমপ্রেশন এবং পুরষ্কার ইভেন্ট) স্বয়ংক্রিয়ভাবে সংগ্রহ করা হয় এবং Firebase-এর জন্য Google Analytics-এ ব্যবহারের জন্য উপলব্ধ।
7. প্রকল্প চালান
একবার আপনি প্রজেক্ট কম্পাইল এবং রান করলে, অ্যাপটি শুরু হলে আপনি নিম্নলিখিত স্ক্রীনটি দেখতে পাবেন।
একবার আপনি 'একটি খেলা শুরু করুন' এ ক্লিক করলে, আপনি পর্দায় একটি অঙ্কন দেখতে পাবেন। আপনার লক্ষ্য হল উপরের দিকে প্রদর্শিত ইঙ্গিতটি ব্যবহার করে অঙ্কনের নাম অনুমান করা, যেখান থেকে আপনি অঙ্কনের নামের প্রথম অক্ষর এবং দৈর্ঘ্য অনুমান করতে পারেন।
অঙ্কনটির নাম কী তা যদি আপনার কোন ধারণা না থাকে তবে আপনি 'SKIP' বোতামে ক্লিক করে স্তরটি এড়িয়ে যেতে পারেন।
আপনি একটি অতিরিক্ত সূত্র চাইতে পারেন যা আপনাকে উত্তর অনুমান করতে সাহায্য করে। আপনি 'HINT' বোতামে ক্লিক করে এবং একটি পুরস্কৃত ভিডিও বিজ্ঞাপন দেখে একটি অতিরিক্ত সূত্র পেতে পারেন৷ আপনি বিজ্ঞাপনটি দেখা সম্পূর্ণ করার পরে, একটি অতিরিক্ত চিঠি পুরস্কার হিসাবে প্রকাশ করা হবে।
8. অ্যাপ ইভেন্ট যোগ করুন
অসাধারণ অঙ্কন কুইজে ব্যবহারকারীর যাত্রা গভীরভাবে বোঝার জন্য, আপনি কয়েকটি কাস্টম ইভেন্টকে সংজ্ঞায়িত করবেন যা গেমটিতে ব্যবহারকারীর আচরণকে নিম্নরূপ ট্র্যাক করে:
ইভেন্টের নাম | ট্রিগার হয়েছে... | পরামিতি |
খেলা_শুরু | যখন একজন ব্যবহারকারী একটি নতুন গেম শুরু করেন | কোনটি |
স্তর_শুরু | যখন একজন ব্যবহারকারী একটি পর্যায়ের মধ্যে একটি নতুন স্তর (একটি নতুন অঙ্কন কুইজ) শুরু করেন। (এক পর্যায়ে 6টি স্তর রয়েছে) | স্তর_নাম |
স্তর_ভুল_উত্তর | যখন একজন ব্যবহারকারী একটি ভুল উত্তর জমা দেয় | স্তর_নাম |
ad_reward_prompt | যখন একজন ব্যবহারকারী ইঙ্গিত বোতামে ট্যাপ করে, এবং একটি পুরস্কৃত ভিডিও বিজ্ঞাপন দেখার জন্য অনুরোধ করা হয় | ad_unit_id |
বিজ্ঞাপন_পুরস্কার_ইম্প্রেশন | যখন একজন ব্যবহারকারী একটি পুরস্কৃত ভিডিও বিজ্ঞাপন দেখতে শুরু করেন | ad_unit_id |
স্তর_সাফল্য | যখন একজন ব্যবহারকারী একটি সঠিক উত্তর জমা দেয় (একটি স্তর সাফ করে) | স্তর_নাম, সংখ্যা_অফ_প্রচেষ্টা, অতিবাহিত_সময়_সেকেন্ড, ইঙ্গিত_ব্যবহৃত |
স্তর_ব্যর্থ | যখন একজন ব্যবহারকারী একটি স্তর এড়িয়ে যায় | স্তর_নাম, সংখ্যা_অফ_প্রচেষ্টা, অতিবাহিত_সময়_সেকেন্ড, ইঙ্গিত_ব্যবহৃত |
খেলা_সম্পূর্ণ | খেলা শেষ হলে | সঠিক_উত্তরের_সংখ্যা |
প্রতিটি ইভেন্টের সাথে যুক্ত প্রতিটি প্যারামিটারের বর্ণনা নিম্নরূপ:
ইভেন্টের নাম | পরামিতি নাম | বর্ণনা |
স্তর_শুরু | স্তর_নাম | স্তরে দেখানো অঙ্কনের নাম (যেমন, "কলা") |
স্তর_ভুল_উত্তর | স্তর_নাম | স্তরে দেখানো অঙ্কনের নাম (যেমন, "কলা") |
ad_reward_prompt | ad_unit_id | একটি বিজ্ঞাপন ইউনিট আইডি একটি পুরস্কৃত ভিডিও বিজ্ঞাপন প্রদর্শন করতে ব্যবহৃত হয় |
বিজ্ঞাপন_পুরস্কার_ইম্প্রেশন | ad_unit_id | একটি বিজ্ঞাপন ইউনিট আইডি একটি পুরস্কৃত ভিডিও বিজ্ঞাপন প্রদর্শন করতে ব্যবহৃত হয় |
স্তর_সাফল্য | স্তর_নাম | স্তরে দেখানো অঙ্কনের নাম (যেমন, "কলা") |
স্তর_সাফল্য | প্রচেষ্টার_সংখ্যা | একটি স্তর সাফ করার প্রচেষ্টার সংখ্যা |
স্তর_সাফল্য | অতিবাহিত_সময়_সেকেন্ড | সেকেন্ডে একটি স্তর সাফ করার জন্য অতিবাহিত সময় |
স্তর_সাফল্য | ইঙ্গিত_ব্যবহৃত | একজন ব্যবহারকারী একটি ইঙ্গিত ব্যবহার করেছেন (একটি পুরস্কৃত ভিডিও বিজ্ঞাপন দেখেছেন) বা একটি স্তর পরিষ্কার করতে না (1: একটি ইঙ্গিত ব্যবহার করেছেন / 0: একটি ইঙ্গিত ছাড়াই একটি স্তর পরিষ্কার করেছেন) |
স্তর_ব্যর্থ | স্তর_নাম | স্তরে দেখানো অঙ্কনের নাম (যেমন, "কলা") |
স্তর_ব্যর্থ | প্রচেষ্টার_সংখ্যা | একটি স্তর সাফ করার প্রচেষ্টার সংখ্যা |
স্তর_ব্যর্থ | অতিবাহিত_সময়_সেকেন্ড | সেকেন্ডে একটি স্তর সাফ করার জন্য অতিবাহিত সময় |
স্তর_ব্যর্থ | ইঙ্গিত_ব্যবহৃত | একজন ব্যবহারকারী একটি ইঙ্গিত ব্যবহার করেছেন (একটি পুরস্কৃত ভিডিও বিজ্ঞাপন দেখেছেন) বা একটি স্তর পরিষ্কার করতে না (1: একটি ইঙ্গিত ব্যবহার করেছেন / 0: একটি ইঙ্গিত ছাড়াই একটি স্তর পরিষ্কার করেছেন) |
খেলা_সম্পূর্ণ | সঠিক_উত্তরের_সংখ্যা | গেমটিতে সাফ করা স্তরের সংখ্যা |
কাস্টম ইভেন্ট লগ করার জন্য একটি সহায়ক শ্রেণী তৈরি করুন
সহজে বিশ্লেষণ ইভেন্ট লগ করতে, আপনি কাস্টম ইভেন্ট পরিচালনা করার জন্য একটি সহায়ক শ্রেণী তৈরি করবেন।
প্রথমে, Assets/Scripts
ফোল্ডারের অধীনে একটি নতুন ফোল্ডার তৈরি করুন এবং এটির নাম দিন Analytics
। তারপর একটি নতুন C# স্ক্রিপ্ট তৈরি করুন এবং Analytics
ফোল্ডারের অধীনে QuizAnalytics.cs
নাম দিন।
QuizAnalytics.cs
ফাইলে নিচের কোডটি যোগ করুন।
Analytics/QuizAnalytics.cs
using Firebase.Analytics;
namespace AwesomeDrawingQuiz.Analytics {
public class QuizAnalytics {
private const string EVENT_AD_REWARD_PROMPT = "ad_reward_prompt";
private const string EVENT_AD_REWARD_IMPRESSION = "ad_reward_impression";
private const string EVENT_LEVEL_FAIL = "level_fail";
private const string EVENT_LEVEL_SUCCESS = "level_success";
private const string EVENT_LEVEL_WRONG_ANSWER = "level_wrong_answer";
private const string EVENT_GAME_START = "game_start";
private const string EVENT_GAME_COMPLETE = "game_complete";
private const string PARAM_AD_UNIT_ID = "ad_unit_id";
private const string PARAM_ELAPSED_TIME_SEC = "elapsed_time_sec";
private const string PARAM_HINT_USED = "hint_used";
private const string PARAM_NUMBER_OF_ATTEMPTS = "number_of_attempts";
private const string PARAM_NUMBER_OF_CORRECT_ANSWERS = "number_of_correct_answers";
public const string SCREEN_MAIN = "main";
public const string SCREEN_GAME = "game";
public static void LogGameStart() {
FirebaseAnalytics.LogEvent(EVENT_GAME_START);
}
public static void LogLevelStart(string levelName) {
FirebaseAnalytics.LogEvent(FirebaseAnalytics.EventLevelStart,
FirebaseAnalytics.ParameterLevelName, levelName);
}
public static void LogLevelWrongAnswer(string levelName) {
FirebaseAnalytics.LogEvent(EVENT_LEVEL_WRONG_ANSWER,
FirebaseAnalytics.ParameterLevelName, levelName);
}
public static void LogAdRewardPrompt(string adUnitId) {
FirebaseAnalytics.LogEvent(EVENT_AD_REWARD_PROMPT, PARAM_AD_UNIT_ID, adUnitId);
}
public static void LogAdRewardImpression(string adUnitId) {
FirebaseAnalytics.LogEvent(EVENT_AD_REWARD_IMPRESSION, PARAM_AD_UNIT_ID, adUnitId);
}
public static void LogLevelSuccess(
string levelName, int numberOfAttemps, int elapsedTimeInSec, bool hintUsed
) {
FirebaseAnalytics.LogEvent(EVENT_LEVEL_SUCCESS, new Parameter[] {
new Parameter(FirebaseAnalytics.ParameterLevelName, levelName),
new Parameter(PARAM_NUMBER_OF_ATTEMPTS, numberOfAttemps),
new Parameter(PARAM_ELAPSED_TIME_SEC, elapsedTimeInSec),
new Parameter(PARAM_HINT_USED, hintUsed ? 1 : 0)
});
}
public static void LogLevelFail(
string levelName, int numberOfAttempts, int elapsedTimeInSec, bool hintUsed
) {
FirebaseAnalytics.LogEvent(EVENT_LEVEL_FAIL, new Parameter[] {
new Parameter(FirebaseAnalytics.ParameterLevelName, levelName),
new Parameter(PARAM_NUMBER_OF_ATTEMPTS, numberOfAttempts),
new Parameter(PARAM_ELAPSED_TIME_SEC, elapsedTimeInSec),
new Parameter(PARAM_HINT_USED, hintUsed ? 1 : 0)
});
}
public static void LogGameComplete(int numberOfCorrectAnswers) {
FirebaseAnalytics.LogEvent(EVENT_GAME_COMPLETE,
PARAM_NUMBER_OF_CORRECT_ANSWERS, numberOfCorrectAnswers);
}
public static void SetScreenName(string screenName) {
FirebaseAnalytics.SetCurrentScreen(screenName, null);
}
}
}
গেমের বিশ্লেষণ ইভেন্টগুলি লগ করুন
Assets/Scripts/Scenes
ফোল্ডারের অধীনে Game.cs
ফাইলটি খুলুন। QuizAnalytics
ক্লাস ব্যবহার করতে, যা AwesomeDrawingQuiz.Analytics
নেমস্পেসের অধীনে অবস্থিত, নিচের মত ব্যবহার করার নির্দেশনা যোগ করুন।
দৃশ্য/Game.cs
using AwesomeDrawingQuiz.Ads;
// TODO: Import AwesomeDrawingQuiz.Analytics (101)
using AwesomeDrawingQuiz.Analytics;
...
namespace AwesomeDrawingQuiz.Scene {
...
}
এরপরে, Start()
ফাংশনে, বর্তমান স্ক্রিনের নাম পরিবর্তন করতে QuizAnalytics.SetScreenName()
এ কল করুন। এছাড়াও, একটি গেম শুরু হয়েছে নির্দেশ করতে QuizAnalytics.LogGameStart()
এ কল করুন।
দৃশ্য/Game.cs
void Start () {
// TODO: Log screen name (101)
QuizAnalytics.SetScreenName(QuizAnalytics.SCREEN_GAME);
...
SetHintButtonEnabled(false);
// TODO: Log game_start event (101)
QuizAnalytics.LogGameStart();
...
}
এরপরে, কলব্যাক ফাংশনে, কাস্টম ইভেন্ট লগ করার জন্য নিম্নরূপ কল যোগ করুন:
দৃশ্য/Game.cs
public void OnClickHint() {
// TODO: Log ad_reward_prompt event (101)
QuizAnalytics.LogAdRewardPrompt(AdManager.AD_UNIT_ID);
...
}
...
public void OnAdStarted(object sender, EventArgs args) {
// TODO: Log ad_reward_impression event (101)
QuizAnalytics.LogAdRewardImpression(AdManager.AD_UNIT_ID);
}
...
public void OnGameOver(object sender, GameOverEventArgs args) {
// TODO: Log game_complete event (101)
QuizAnalytics.LogGameComplete(args.NumCorrectAnswers);
...
}
public void OnLevelCleared(object sender, LevelClearEventArgs args) {
// TODO: Log level_success event (101)
QuizAnalytics.LogLevelSuccess(
args.Drawing.word, args.NumAttempts, args.ElapsedTimeInSeconds, args.IsHintUsed);
...
}
public void OnLevelSkipped(object sender, LevelSkipEventArgs args) {
// TODO: Log level_fail event (101)
QuizAnalytics.LogLevelFail(
args.Drawing.word, args.NumAttempts, args.ElapsedTimeInSeconds, args.IsHintUsed);
}
public void OnNewLevel(object sender, NewLevelEventArgs args) {
// TODO: Log level_start event (101)
QuizAnalytics.LogLevelStart(args.Drawing.word);
...
}
public void OnWrongAnwser(object sender, WrongAnswerEventArgs args) {
// TODO: Log level_wrong_answer event (101)
QuizAnalytics.LogLevelWrongAnswer(args.Drawing.word);
...
}
অবশেষে, Main.cs ফাইলটি Assets/Scripts/Scenes
ফোল্ডারের অধীনে আপডেট করুন। আপনি Firebase SDK-এ কোনো পদ্ধতি কল করার আগে Firebase প্রস্তুত কিনা তা নিশ্চিত করুন।
দৃশ্য/Main.cs
using AwesomeDrawingQuiz.Ads;
// TODO: Import AwesomeDrawingQuiz.Analytics (101)
using AwesomeDrawingQuiz.Analytics;
...
namespace AwesomeDrawingQuiz.Scene {
public class Main : MonoBehaviour {
...
void Start () {
Screen.sleepTimeout = SleepTimeout.SystemSetting;
#if UNITY_ANDROID
// Disable 'Start a game' button until
// Firebase dependencies are ready to use on the Android
buttonStartGame.interactable = false;
// TODO: Check Google Play Services on Android (101)
// Check Google Play Services on Android device is up to date
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
var dependencyStatus = task.Result;
if (dependencyStatus == Firebase.DependencyStatus.Available) {
Debug.Log("All Firebase services are available");
// TODO: Set screen name (101)
QuizAnalytics.SetScreenName(QuizAnalytics.SCREEN_MAIN);
} else {
throw new System.InvalidOperationException(System.String.Format(
"Could not resolve all Firebase dependencies: {0}", dependencyStatus));
}
}).ContinueWith(task => {
// Enable 'Start a game' button
UnityMainThreadDispatcher.Instance()
.Enqueue(() => buttonStartGame.interactable = true);
});
#else
// TODO: Set screen name (101)
QuizAnalytics.SetScreenName(QuizAnalytics.SCREEN_MAIN);
#endif
}
...
}
}
9. বিশ্লেষণ ইভেন্ট ডিবাগ করুন
সঠিকভাবে লগ করা ইভেন্টগুলি যাচাই করতে আপনি DebugView ব্যবহার করতে পারেন। DebugView আপনাকে প্রায় রিয়েল-টাইমে ডেভেলপমেন্ট ডিভাইসে আপনার অ্যাপ দ্বারা লগ করা কাঁচা ইভেন্ট ডেটা দেখতে সক্ষম করে।
এটি উন্নয়নের ইন্সট্রুমেন্টেশন পর্বের সময় বৈধকরণের উদ্দেশ্যে খুবই উপযোগী এবং আপনার বিশ্লেষণ বাস্তবায়নে ত্রুটি এবং ভুলগুলি আবিষ্কার করতে সাহায্য করতে পারে।
অ্যান্ড্রয়েডে ডিবাগ মোড সক্ষম করুন
সাধারণত, আপনার অ্যাপে লগ ইন করা ইভেন্টগুলি প্রায় এক ঘন্টার মধ্যে একসাথে ব্যাচ করা হয় এবং একসাথে আপলোড করা হয়। ফ্লাইতে আপনার অ্যানালিটিক্স ইমপ্লিমেন্টেশন যাচাই করতে, আপনাকে আপনার ডেভেলপমেন্ট ডিভাইসে ডিবাগ মোড সক্ষম করতে হবে যাতে ন্যূনতম বিলম্বের সাথে ইভেন্টগুলি আপলোড করা যায়।
প্রথমে অ্যান্ড্রয়েড স্টুডিওতে টার্মিনাল টুল খুলুন। এটি নীচের টুলবারে অবস্থিত।
তারপরে নিম্নলিখিত কমান্ডটি চালান (নিশ্চিত করুন যে অ্যান্ড্রয়েড ডিভাইসটি আপনার কম্পিউটারের সাথে সংযুক্ত বা অ্যান্ড্রয়েড এমুলেটর চলছে কিনা পরীক্ষা করুন):
adb shell setprop debug.firebase.analytics.app com.google.codelab.awesomedrawingquiz
এই আচরণটি অব্যাহত থাকে যতক্ষণ না আপনি নিম্নোক্ত কমান্ডটি চালানোর মাধ্যমে স্পষ্টভাবে ডিবাগ মোড নিষ্ক্রিয় করেন:
adb shell setprop debug.firebase.analytics.app .none.
iOS এ ডিবাগ মোড সক্ষম করুন
আপনার ডেভেলপমেন্ট ডিভাইসে অ্যানালিটিক্স ডিবাগ মোড সক্ষম করতে, Xcode-এ নিম্নলিখিত কমান্ড লাইন আর্গুমেন্ট উল্লেখ করুন:
-FIRDebugEnabled
নিম্নলিখিত কমান্ড লাইন আর্গুমেন্ট উল্লেখ করে আপনি স্পষ্টভাবে ডিবাগ মোড নিষ্ক্রিয় না করা পর্যন্ত এই আচরণ অব্যাহত থাকে:
-FIRDebugDisabled
DebugView এর সাথে বিশ্লেষণ ইভেন্ট ডিবাগ করুন
একবার আপনি আপনার পরীক্ষা ডিভাইসে ডিবাগ মোড সক্ষম করলে, Firebase কনসোলে যান এবং মেনু থেকে DebugView নির্বাচন করুন। তারপর, আপনার পরীক্ষা ডিভাইসে, লগ ইন করা এবং DebugView রিপোর্টে দেখানো ইভেন্টগুলি দেখতে আপনার গেমটি খেলুন৷
আপনি ইভেন্টের নামে ক্লিক করে প্রতিটি ইভেন্ট সম্পর্কে বিস্তারিত তথ্য অ্যাক্সেস করতে পারেন। উদাহরণ হিসেবে, নিচের স্ক্রিনশট level_start
ইভেন্টের সাথে সম্পর্কিত প্যারামিটারের বিবরণ দেখায়।
আরো বিস্তারিত জানার জন্য অনুগ্রহ করে DebugView সহায়তা কেন্দ্র নিবন্ধটি পড়ুন।
10. প্যারামিটার রিপোর্টিং সক্ষম করুন
Firebase-এর জন্য Google Analytics ডিফল্টরূপে ইভেন্ট গণনার মোট সংখ্যা সংগ্রহ করবে, কিন্তু কাস্টম প্যারামিটারের জন্য রিপোর্টিং আপনার আগ্রহের প্রতিটি ইভেন্ট প্যারামিটারের জন্য স্পষ্টভাবে চালু করতে হবে। একবার এটি সক্ষম হলে, Firebase-এর জন্য Google Analytics অতিরিক্ত কার্ড প্রদর্শন করবে। কাস্টম প্যারামিটারের পরিসংখ্যান।
একটি ইভেন্টের জন্য কাস্টম প্যারামিটার নিবন্ধন করতে:
- Firebase কনসোলে যান এবং আপনার আগে তৈরি করা অসাধারণ অঙ্কন কুইজ প্রকল্পটি নির্বাচন করুন।
- নেভিগেশন মেনু থেকে ইভেন্টে ক্লিক করুন।
- আপনি যে ইভেন্টটি পরিবর্তন করতে চান তার সারিতে ক্লিক করুন > প্যারামিটার রিপোর্টিং সম্পাদনা করুন।
- প্যারামিটার নাম লিখুন ক্ষেত্রে, আপনি যে প্যারামিটারটি নিবন্ধন করতে চান তার নাম লিখুন।
দ্রষ্টব্য: যদি কোনো মিল পাওয়া না যায়, শুধু প্যারামিটারের নাম লিখুন তারপর ADD এ ক্লিক করুন। 5. নীচের টেবিলটি পড়ুন, এবং সেই অনুযায়ী টেক্সট বা নম্বরে টাইপ ফিল্ড সেট করুন। সাংখ্যিক পরামিতিগুলির জন্য, নিশ্চিত করুন যে আপনি পরিমাপের ক্ষেত্রের এককও সেট করেছেন। 6. সেটআপ শেষ করতে সেভ বোতামে ক্লিক করুন।
নীচে তালিকাভুক্ত প্রতিটি ইভেন্টে প্যারামিটার রিপোর্টিং সক্ষম করুন৷
ইভেন্টের নাম | পরামিতি নাম | পরামিতি প্রকার | পরিমাপের একক |
স্তর_শুরু | স্তর_নাম | পাঠ্য | N/A |
স্তর_ভুল_উত্তর | স্তর_নাম | পাঠ্য | N/A |
স্তর_সাফল্য | স্তর_নাম | পাঠ্য | N/A |
স্তর_সাফল্য | প্রচেষ্টার_সংখ্যা | সংখ্যা | স্ট্যান্ডার্ড |
স্তর_সাফল্য | অতিবাহিত_সময়_সেকেন্ড | সংখ্যা | সেকেন্ড |
স্তর_সাফল্য | ইঙ্গিত_ব্যবহৃত | সংখ্যা | স্ট্যান্ডার্ড |
স্তর_ব্যর্থ | স্তর_নাম | পাঠ্য | N/A |
স্তর_ব্যর্থ | প্রচেষ্টার_সংখ্যা | সংখ্যা | স্ট্যান্ডার্ড |
স্তর_ব্যর্থ | অতিবাহিত_সময়_সেকেন্ড | সংখ্যা | সেকেন্ড |
স্তর_ব্যর্থ | ইঙ্গিত_ব্যবহৃত | সংখ্যা | স্ট্যান্ডার্ড |
খেলা_সম্পূর্ণ | সঠিক_উত্তরের_সংখ্যা | সংখ্যা | স্ট্যান্ডার্ড |
নিম্নলিখিত উদাহরণ level_success
ইভেন্টের জন্য কাস্টম প্যারামিটার রিপোর্টিং সেটআপ দেখায়:
একবার আপনি প্যারামিটার রিপোর্টিং সেটআপ সম্পূর্ণ করলে, আপনি প্যারামিটার রিপোর্টিং চালু আছে এমন প্রতিটি ইভেন্টের সাথে সম্পর্কিত প্যারামিটারগুলি দেখতে সক্ষম হবেন।
11. ইভেন্ট রিপোর্ট থেকে অন্তর্দৃষ্টি পান
যেহেতু আপনি গেমটিতে কয়েকটি ইভেন্ট যোগ করেছেন, আপনি গেমটির ব্যবহারকারীর আচরণ সম্পর্কিত প্রশ্নের উত্তর দিতে সক্ষম হবেন। এখানে কয়েকটি অন্তর্দৃষ্টি রয়েছে যা আপনি Firebase ইভেন্ট রিপোর্ট থেকে পেতে পারেন।
কোন স্তরে ভুল উত্তরের সংখ্যা সবচেয়ে বেশি?
এই প্রশ্নের উত্তর দেওয়ার জন্য, প্রতিটি স্তরে কতগুলি level_wrong_answer
ইভেন্ট ট্রিগার হয়েছে তা খুঁজে বের করা উচিত৷
ঘটনা রিপোর্ট থেকে level_wrong_answer
ক্লিক করুন. level_wrong_answer
ইভেন্ট রিপোর্টে, level_name
কার্ডটি খুঁজুন। আপনি নিচের মতো সেই কার্ডে level_name
প্যারামিটারের সাথে সম্পর্কিত মানগুলি দেখতে পাবেন।
উপরের স্ক্রিনশট অনুসারে, আপনি সহজেই খুঁজে পেতে পারেন যে দিগন্তে সবচেয়ে বেশি সংখ্যক ভুল উত্তর রয়েছে, যার মানে অন্যান্য স্তরের তুলনায় ব্যবহারকারীদের পক্ষে এটি কঠিন।
আপনি এখান থেকে যে অন্তর্দৃষ্টি পেয়েছেন তা ব্যবহার করে, আপনি উচ্চ ধারণ হার রাখার জন্য নবীন ব্যবহারকারীদের কঠিন স্তর প্রদান না করার সিদ্ধান্ত নিতে পারেন।
একটি স্তর পরিষ্কার করার জন্য গড়ে কত প্রচেষ্টা করা হয়েছিল?
অসাধারন অঙ্কন কুইজে ব্যবহারকারীরা প্রতিটি স্তরে যত খুশি উত্তর জমা দিতে পারেন।
যেহেতু আপনি level_success
ইভেন্টে number_of_attempts
প্যারামিটারে প্যারামিটার রিপোর্টিং সক্ষম করেছেন, আপনি সেই প্যারামিটারের বিস্তারিত মেট্রিক্স দেখতে পারেন।
ইভেন্ট রিপোর্ট থেকে level_success
ইভেন্টে ক্লিক করুন। level_success
ইভেন্ট রিপোর্টে, number_of_attemps
কার্ডটি খুঁজুন। আপনি এই কার্ডে চেষ্টার গড় সংখ্যা দেখতে পাবেন:
আপনি গড়ে গেমের অসুবিধা অপ্টিমাইজ করতে এখান থেকে অন্তর্দৃষ্টি ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি গড় প্রচেষ্টার সংখ্যা 1-এর কাছাকাছি হয়, তাহলে আপনি গেমটিকে একটু বেশি চ্যালেঞ্জিং করার কথা বিবেচনা করতে পারেন।
ব্যবহারকারীরা কি একটি ইঙ্গিত পেয়ে প্রশ্নটি সমাধান করার চেষ্টা করেছেন, যদিও তারা শেষ পর্যন্ত একটি স্তর পরিষ্কার করতে ব্যর্থ হয়েছে?
যখন একজন ব্যবহারকারী একটি লেভেল এড়িয়ে যাওয়ার সিদ্ধান্ত নেয়, তখন একটি level_fail
ইভেন্ট ট্রিগার হয়। ব্যবহারকারীর সিদ্ধান্তের অনেক কারণ থাকতে পারে।
যাইহোক, যেহেতু পুরস্কৃত ভিডিও বিজ্ঞাপন দেখার পরে গেমটি তাদের একটি ইঙ্গিত দিতে পারে, তাই এটি জানা গুরুত্বপূর্ণ যে ব্যবহারকারী অন্তত ইঙ্গিতটির সাহায্যে স্তরটি পরিষ্কার করার চেষ্টা করেছেন কিনা।
ইভেন্ট রিপোর্ট থেকে level_fail
ইভেন্টে ক্লিক করুন। level_fail
ইভেন্ট রিপোর্টে, hint_used
কার্ডটি খুঁজুন। আপনি hint_used
ইভেন্ট প্যারামিটারের গড় সংখ্যা দেখতে পাবেন। নোট করুন যে যখন একটি ইঙ্গিত ব্যবহার করা হয় তখন এটি 1 তে সেট করা হয় এবং এটি 0 এ সেট করা হয় যখন একটি ইঙ্গিত ব্যবহার করা হয় নি।
যদি hint_used
কার্ডে সংখ্যাগুলি 0-এর কাছাকাছি হয়, তবে এটি ইঙ্গিত দেয় যে পুরস্কারটি (ইঙ্গিত) ব্যবহারকারীদের কাছে যথেষ্ট আকর্ষণীয় নয়৷ এছাড়াও, আপনি পুরস্কৃত ভিডিও বিজ্ঞাপন থেকে আয় বাড়ানোর সুযোগ হারাচ্ছেন।
তাই, ব্যবহারকারীদের জন্য পুরষ্কারটিকে আরও সহায়ক করার জন্য আপনার বিবেচনা করা উচিত, যাতে ব্যবহারকারীরা গেমটিতে আরও গভীরভাবে জড়িত হতে পারে এবং সেইসাথে পুরস্কৃত ভিডিও বিজ্ঞাপন থেকে আয় বৃদ্ধি পেতে পারে।
প্রতিটি খেলায় গড়ে কত স্তর সাফ করা হয়েছিল?
অসাধারণ অঙ্কন কুইজে প্রতিটি গেমের জন্য মোট 6টি স্তর রয়েছে। একবার ব্যবহারকারী ছয়টি স্তর শেষ করলে (তারা প্রতিটি স্তর সাফ বা ব্যর্থ হোক না কেন), একটি game_complete
ইভেন্ট একটি প্যারামিটার হিসাবে number_of_correct_answers
সহ ট্রিগার হয়।
যেহেতু number_of_correct_answers
নির্দেশ করে যে ব্যবহারকারী কতটি স্তর সাফ করেছে (একটি সঠিক উত্তর প্রদান করেছে), আপনি number_of_correct_answers
প্যারামিটারের মেট্রিক্স দেখে উত্তর খুঁজে পেতে পারেন।
ইভেন্ট রিপোর্ট থেকে game_complete
ইভেন্টে ক্লিক করুন। গেম_সম্পূর্ণ ইভেন্ট রিপোর্টে, number_of_correct_answers
কার্ডটি খুঁজুন। আপনি number_of_correct_answers
ইভেন্ট প্যারামিটারের গড় সংখ্যা দেখতে পাবেন।
যদি সাফ করা স্তরের গড় সংখ্যা খুব কম হয়, তাহলে আপনাকে একটি স্তরকে হারাতে লোকেদের সাহায্য করার জন্য গেমটি পুনর্বিন্যাস করার কথা বিবেচনা করা উচিত, যাতে তারা তাদের আগ্রহ না হারিয়ে আপনার গেম খেলতে পারে৷
12. সব সম্পন্ন!
আপনি AdMob+Firebase 101 ইউনিটি কোডল্যাব সম্পূর্ণ করেছেন। আপনি এই কোডল্যাবের জন্য সম্পূর্ণ কোড খুঁজে পেতে পারেন 101-complete_and_102-বেস ফোল্ডার।
AdMob+Firebase কোডল্যাবের পরবর্তী অংশে, আপনি অ্যাপ ইভেন্ট ফ্লোকে কল্পনা করতে ফানেল ব্যবহার করতে শিখবেন। এছাড়াও, এটি একটি অ্যাপ আপডেট ছাড়াই গেমের প্যারামিটার মান অপ্টিমাইজ করতে রিমোট কনফিগ এবং A/B টেস্টিং কীভাবে ব্যবহার করতে হয় তা কভার করবে।