آموزش پیاده سازی سرویس Firebase Analytics در برنامه نویسی اندروید

سلام دوستان عزیز در این سری از آموزش برنامه نویسی اندروید به آموزش پیاده سازی سرویس Firebase Analytics در برنامه نویسی اندروید می پردازیم.  قبل تر این سرویس را معرفی کردیم و در این بار بیشتر به کد های آن می پردازیم با ما همراه باشید.
ابتدا عمر به این اشاره کنیم که زمانی که sdk فایربیس مربوط به Analytics را در سرویس خود قرار دهید تمامی رویداد ها و ویژگی ها کاربر را می گیرد و همچنین شما می توانید رویداد های سفارشی نیز تعریف کنید که در ادامه به آن ها می پردازیم.
در ادامه به رویداد هایی که به صورت اتوماتیک (در صورت قرار دادن sdk فایربیس در برنامه) به برنامه شما اضافه می شود می پردازیم.

نام رویداد عمل
first_open زمانی که کاربر برای اولین بار برنامه را راه اندازی (اجرا) می کند اتفاق می افتد این عمل هنگام دانلود کردن رخ نمی دهد بلکه بعد از نصب این رویداد اجرا می شود.
in_app_purchase در ایران این سرویس عملی نمی شود چون پرداخت درون برنامه ای گوگل پلی است و برای برنامه نویسان ایرانی زیاد مهم نیست ولی برای دانستن وقتی برنامه اجرا می شود این رویداد میزان خرید از درون برنامه را برای توسعه دهنده در بخش پنل می تواند مشاهد کند به طور مثال کاربر x مقدار x $ دلار خریده کرده است .
user_engagement چه مقدار کاربر با برنامه درگیر است (چقدر در روز از اپلیکیشن شما استفاده می کند.)
session_start زمانی که کاربر بیش چند دقیقه با برنامه کار یا بازی می کند یک سشن (جلسه) ایجاد می کند تا تمامی کار های کاربر را زیر نظر گیرد.
app_update این رویداد دو طرفه است یعنی از یک طرفی برای توسعه دهنده و از یک طرفی برای کاربر مهم است نحوه کار به این شکل است که اگر برنامه توسعه دهنده به ورژن جدیدی آپدیت شد به کاربر پیام می دهد که نسخه جدید برای نصب در دسترس است و از طرفی یک مقدار برای توسعه دهنده نیز ارسال می شود که ایا کاربر به نسخه جدید  ارتقا پیدا کرده است یا نه.
app_remove این رویداد مقداری کاربرانی را که اپ را روی گوشیشان حذف کرده اند به پنل ارسال می کند.
os_update این رویداد به توسعه دهنده اعلام می کند که گوشی کاربر به ورژن جدیدی ارتقا پیدا کرده است.
app_clear_data این رویداد زمانی ارسال می شود که کاربر دیتا مربوط به برنامه را از توی گوشی خود پاک کند.
app_exception زمانی که خطای در برنامه رخ دهد این رویداد اجرا و به توسعه دهنده خبر می دهد.
notification_foreground زمانی که یک notification از طریق سرویس FCM ارسال می شود میزان کلیک نکردن (باز نکردن) کاربر بروی آن Notification را برای توسعه دهنده ارسال می کند
notification_receive این رویداد نرخ رسیدن پیام Notification را به توسعه دهنده اعلام می کند.
notification_open نرخ باز شدن صحیح Notification را اعلام می کند.
notification_dismiss نرخ رد کردن Notification را به توسعه دهنده اعلام می کند
dynamic_link_first_open بعد از باز کردن برنامه و بسته آن اولین لینکی که کاربر آن را باز می کند برای توسعه دهنده ارسال می شود ! (شبیه برنامه جاسوسی می ماند !) البته فقط برای گوشی های ios فعلا این قابلیت فعال است.
dynamic_link_app_open بعد از باز کردن برنامه و بستن آن اولین اپلیکیشنی که توسط کاربر باز می شود را برای توسعه دهنده ارسال می کند این سرویس هم فقط روی پلتفروم ios کار می کند البته فعلا

 
این تمای رویداد های بودند که تنها با قرار دادن sdk فایربیس در برنامه اجرا می شودند !
 
حال به ویژگی (Properties) های که از کاربر به صورت اتوماتیک جمع آوری می شوند می پردازیم.

  • App version / نسخه اپ
  • Device model / مدل گوشی
  • Gender / مذکر یا مونث بودن کاربر
  • Age / سن کاربر
  • Interests علاقه مندی های کاربر
  • OS version نسخه پلتفرم کاربر
  • New/Established / اخباری که کاربر منتشر کرده (به طور کلی هر کاری که کاربر انجام داده است به طور مثال گذاشتن عکس در اینستاگرام و…)

 
اولین کاری که انجام می دهید لازم است تا یک حساب کاربری در فایربیس ایجاد کنید در صورتی که حساب کاربری دارید باید آن را به Android studio وصل کنید. (از این آموزش می توانید استفاده کنید.)
دوستان حتما لینک را مطالعه فرماید در غیر این صورت نمی توانید درست انجام دهید ادامه کار را
بعد از آن از قسمت Assistant همانند شکل زیر عمل کنید.

 
 
سپس روی Log an Analytics Evnets کلیک کنید و همانند شکل زیر عمل کنید

باید کمی صبر کنید برنامه شما Sync شود ! مقداری زمان می برد.
وارد فایل AndroidManifest.xml شوید و دسترسی اینترنت را اضافه کنید.

و تمام در صورتی که می خواید یک Evnet کاستوم درست کنید در ادامه با ما همراه باشید و یک نکته شما همین الان نمی توانید کارهایی رو که کاربر انجام می دهد رصد  کنید بعد 24 ساعت فعال می شود !
 
خب گفتیم که تا اینجا آموزش تمام شده فقط کسانی که می خوان رویداد سفارشی درست کنند ادامه رو دنبال کنند یک کلاس به نام Food ایجاد کنید سپس کد های زیر را درآن قرار دهید.

و فایل MainActivity هم به شکل زیر می شود.

کل کاری که کد بالا انجام می دهد یک Instance از فایربیس می گیریم و به صورت رندوم یک غذا را  برای سرویس فایربیس ارسال می کنیم.
وتمام امیدوارم مفیده بوده باشد.
موفق باشید.
 
 

مطالعه بیشتر