Analytics API Reference¶
Complete API reference for the Analytics module.
IVXAnalyticsManager¶
Event tracking and analytics manager.
Properties¶
| Property | Type | Description |
|---|---|---|
Instance | IVXAnalyticsManager | Singleton instance |
UserId | string | Current user ID |
IsInitialized | bool | Initialization status |
Event Tracking Methods¶
TrackEvent¶
Tracks a simple event.
Example:
TrackEvent (with parameters)¶
Tracks an event with parameters.
Example:
IVXAnalyticsManager.Instance.TrackEvent("level_completed", new Dictionary<string, object>
{
{ "level", 5 },
{ "score", 1500 },
{ "time_seconds", 120 }
});
TrackEvent (with single parameter)¶
Tracks an event with a single parameter.
Example:
Screen Tracking¶
TrackScreen¶
Tracks a screen view.
Example:
IVXAnalyticsManager.Instance.TrackScreen("MainMenu");
IVXAnalyticsManager.Instance.TrackScreen("Settings");
User Properties¶
SetUserProperty¶
Sets a user property.
Example:
IVXAnalyticsManager.Instance.SetUserProperty("player_level", "10");
IVXAnalyticsManager.Instance.SetUserProperty("is_premium", "true");
SetUserId¶
Sets the user ID for analytics.
Revenue Tracking¶
TrackPurchase¶
public void TrackPurchase(
string productId,
decimal price,
string currency,
string transactionId = null)
Tracks a purchase event.
Example:
TrackAdRevenue¶
Tracks ad revenue.
Session Methods¶
StartSession¶
Starts a new analytics session.
EndSession¶
Ends the current session.
Flush Methods¶
Flush¶
Immediately sends queued events.
Standard Events¶
Recommended event names for consistency:
| Event | Parameters | Description |
|---|---|---|
tutorial_begin | - | Tutorial started |
tutorial_complete | - | Tutorial finished |
level_start | level | Level started |
level_end | level, success, score | Level finished |
item_purchase | item_id, item_name, price | Virtual purchase |
ad_impression | ad_type, network | Ad shown |
login | method | User logged in |
sign_up | method | New registration |
Example Usage¶
public class GameAnalytics : MonoBehaviour
{
void Start()
{
IVXAnalyticsManager.Instance.TrackScreen("GameScene");
IVXAnalyticsManager.Instance.TrackEvent("game_started");
}
public void OnLevelComplete(int level, int score, float time)
{
IVXAnalyticsManager.Instance.TrackEvent("level_complete", new Dictionary<string, object>
{
{ "level", level },
{ "score", score },
{ "time_seconds", time },
{ "deaths", _deathCount }
});
}
public void OnItemPurchased(string itemId, int cost)
{
IVXAnalyticsManager.Instance.TrackEvent("item_purchase", new Dictionary<string, object>
{
{ "item_id", itemId },
{ "cost", cost },
{ "currency", "coins" }
});
}
}