Track screen_displayed in Firebase Analytics

Jassim Al Rahma 1,526 Reputation points
2021-10-23T14:18:17.957+00:00

Hi,

How can I track the screen_displayed in Xamarin using Firebase Analytics? Ia m currently able to track events only using below.

Interface:

using System;

namespace MyApp
{
    public interface IFirebaseEvents
    {
        void LogEvent(string Id, string name, string value);
    }
}

iOS:

using System;
using System.Collections.Generic;
using Firebase.Analytics;
using Foundation;
using MyApp;

[assembly: Xamarin.Forms.Dependency(typeof(IFirebaseEvents))]
namespace MyApp.iOS
{
    public class FirebaseEvents : IFirebaseEvents
    {
        public void LogEvent(string Id, string name, string value)
        {
            var keys = new List<NSString>()
            {
                new NSString(name)
            };

            var values = new List<NSString>()
            {
                new NSString(value)
            };

            Analytics.LogEvent(Id, NSDictionary<NSString, NSObject>.FromObjectsAndKeys(values.ToArray(), keys.ToArray(), keys.Count));
        }
    }
}

Android:

using System;
using Android.OS;
using Firebase.Analytics;
using Xamarin.Forms;
using MyApp;

[assembly: Xamarin.Forms.Dependency(typeof(IFirebaseEvents))]
namespace MyApp.Droid
{
    public class FirebaseEvents : IFirebaseEvents
    {
        public void LogEvent(string Id, string name, string value)
        {
            var firebaseAnalytics = FirebaseAnalytics.GetInstance(Android.App.Application.Context);

            var bundle = new Bundle();

            bundle.PutString(name, value);

            firebaseAnalytics.LogEvent(Id, bundle);
        }
    }
}
Xamarin
Xamarin
A Microsoft open-source app platform for building Android and iOS apps with .NET and C#.
5,296 questions
C#
C#
An object-oriented and type-safe programming language that has its roots in the C family of languages and includes support for component-oriented programming.
10,277 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Bruce (SqlWork.com) 56,766 Reputation points
    2021-10-23T15:39:22.913+00:00

    There is nothing automatic. First define an id and naming scheme for your screens. Then add the logging calls to the screen display code.

    You probably also want to add log calls to every button click callback.