آموزش پیاده سازی سرویس 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 از فایربیس می گیریم و به صورت رندوم یک غذا را  برای سرویس فایربیس ارسال می کنیم.
وتمام امیدوارم مفیده بوده باشد.
موفق باشید.
 
 

مطالعه بیشتر