/// <summary>
        /// Trace with firebase
        /// </summary>
        /// <param name="returnArgumentsTracingModel">Return arguments tracing model</param>
        public void TraceWithFirebase(ReturnArgumentsTracingModel returnArgumentsTracingModel)
        {
            firebaseService = DependencyService.Get <IFirebaseService>();

            firebaseService.SetUserId(returnArgumentsTracingModel.UserId);
            firebaseService.ReportHandledException(returnArgumentsTracingModel.Exception);
            firebaseService.ReportUnHandledException(returnArgumentsTracingModel.Exception);
            firebaseService.LogEvent(returnArgumentsTracingModel.EventName);
            firebaseService.SetCurrentScreen(returnArgumentsTracingModel.ScreenName);
            firebaseService.LogActivity(Message, returnArgumentsTracingModel.EndLogging);

            if (returnArgumentsTracingModel.LogData != null && returnArgumentsTracingModel.LogData.Count > 0)
            {
                foreach (var parameter in returnArgumentsTracingModel.LogData)
                {
                    firebaseService.SetLogData(parameter.Key, parameter.Value);
                }
            }

            // TODO: Localization
            DependencyService.Get <IAlertManager>()
            .ShowAlert(returnArgumentsTracingModel.Exception.Message,
                       "Error",
                       "OK");
        }
Exemple #2
0
        /// <summary>
        /// Set Firebase Log Attributes
        /// </summary>
        private void SetFirebaseLogAttributes()
        {
            firebaseService = DependencyService.Get <IFirebaseService>();

            firebaseService.SetUserId("");

            var deviceControl = DependencyService.Get <IDeviceControl>();

            if (deviceControl != null)
            {
                firebaseService?.SetLogData(nameof(deviceControl.DeviceBrand), deviceControl.DeviceBrand());
                firebaseService?.SetLogData(nameof(deviceControl.DeviceManufacturer), deviceControl.DeviceManufacturer());
                firebaseService?.SetLogData(nameof(deviceControl.DeviceModel), deviceControl.DeviceSerial());
                firebaseService?.SetLogData(nameof(deviceControl.DeviceSerialNumber), deviceControl.DeviceSerialNumber());
            }
        }