iOS Event Logging

IV Metrics SDK contains an Event Logging System that can be sent alongside the recordings. Events can not only be used for standard analytics, but also for starting a recording session if the recording request was set up to do so in the IV Metrics panel.

There are four ways of sending an event; Lightweight, Fast, Standard and Detailed.

Event Details

  • Event names are of NSString type, trucated to maximum 16 characters in length.
  • Parameter names must be from the IVParameterName enum.
  • Parameter values can be of type:
    • NSString (Up to 16 characters in length)
    • NSNumber (Of type Integer, Float or Boolean)

Lightweight Event

The most basic of events, containing no supplementary data.

IVMetrics.LogEvent(@"TutorialComplete");

Fast Event

These events can contain a secondary value that bypasses the need for the parameter name, this thereby will be sent with the default parameter name “value”.

// Trigger an event when the tutorial has progressed to stage 3
IVMetrics.LogEvent(@"TutorialProgress", @3);  

// Will produce the event:
// Name: "TutorialProgress"
// ParameterName: "value"
// ParameterValue: 3

Standard Event

These functions produce a larger amount of customisation over the event that gets sent to the IV Metrics servers. You can choose from one of up to 11 pre-configured parameter names to help describe your event for greater clarity when poring over them in the analytics panel.

// Trigger an event when the user has received a bunch of in-game coins
[IVMetrics LogEvent:@"CoinsReceived" withName:IVParameterNameAmount andNumber:@200];

// Will produce the event:
// Name: "CoinsReceived"
// ParameterName: "amount"
// ParameterValue: 200

Detailed Event

This function produce the maximum allowed customisation over the event that gets sent to the IV Metrics servers. This event will produce the most clarity for an event.

// Trigger an event with the user has received a bunch of various in-game currencies

NSMutableArray<IVAnalyticsParameter*>* params = [NSMutableArray arrayWithCapacity:@3];

[params addObject:[[IVAnalyticsParameter alloc] init:IVParameterNameVirtualCurrencyName withString:@"Coins"]];
[params addObject:[[IVAnalyticsParameter alloc] init:IVParameterNameAmount withNumber:@200]];
[params addObject:[[IVAnalyticsParameter alloc] init:IVParameterNameAction withString:@"DailyReward"]];

[IVMetrics LogEvent:@"CurrencyReceived" withParameters:params];

Copyright © 2026 IVMetrics.com All rights reserved.

Copyright © 2026 IVMetrics.com All rights reserved.

This site uses Just the Docs, a documentation theme for Jekyll.