Analytics

Struct Analytics 

Source
pub struct Analytics { /* private fields */ }

Implementations§

Source§

impl Analytics

Source

pub fn app(&self) -> &FirebaseApp

Source

pub async fn log_event( &self, name: &str, params: BTreeMap<String, String>, ) -> AnalyticsResult<()>

Source

pub fn recorded_events(&self) -> Vec<AnalyticsEvent>

Source

pub fn gtag_state(&self) -> GtagState

Returns a snapshot of the gtag bootstrap state collected so far.

Source

pub async fn measurement_config(&self) -> AnalyticsResult<DynamicConfig>

Resolves the measurement configuration for this analytics instance. The value is derived from the Firebase app options when possible and otherwise fetched from the Firebase analytics REST endpoint. Results are cached for subsequent calls.

Source

pub fn configure_measurement_protocol( &self, config: MeasurementProtocolConfig, ) -> AnalyticsResult<()>

Configures the analytics instance to forward events using the GA4 Measurement Protocol.

The configuration requires a valid measurement ID and API secret generated from the associated Google Analytics property. If a dispatcher has already been configured it is replaced.

Source

pub async fn configure_measurement_protocol_with_secret( &self, api_secret: impl Into<String>, ) -> AnalyticsResult<()>

Convenience helper that resolves the measurement configuration and configures the measurement protocol using the provided API secret. The dispatcher targets the default GA4 collection endpoint.

Source

pub async fn configure_measurement_protocol_with_secret_and_endpoint( &self, api_secret: impl Into<String>, endpoint: MeasurementProtocolEndpoint, ) -> AnalyticsResult<()>

Convenience helper that resolves the measurement configuration and configures the measurement protocol using the provided API secret and custom endpoint. This is primarily intended for testing or emulator scenarios.

Source

pub fn set_client_id(&self, client_id: impl Into<String>)

Overrides the client identifier reported to the measurement protocol. When unset the analytics instance falls back to a randomly generated identifier created during initialization.

Source

pub fn set_default_event_parameters(&self, params: BTreeMap<String, String>)

Sets the default event parameters that should be merged into every logged event unless explicitly overridden.

Configures default consent settings that mirror the GA4 consent API. The values are cached so they can be applied once full gtag integration is implemented. Calling this replaces any previously stored consent state.

Source

pub fn apply_settings(&self, settings: AnalyticsSettings)

Applies analytics configuration options analogous to the JS AnalyticsSettings structure. The configuration is cached and merged with any previously supplied settings.

Source

pub fn set_collection_enabled(&self, enabled: bool)

Enables or disables analytics collection. When disabled, events are still recorded locally but are not dispatched through the configured transport.

Source

pub fn collection_enabled(&self) -> bool

Returns whether analytics collection is currently enabled.

Trait Implementations§

Source§

impl Clone for Analytics

Source§

fn clone(&self) -> Analytics

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Analytics

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,