Legacy iOS Tracking
Legacy iOS SDK is in maintenance-only mode and will be removed. New games must use SDK v2 Tracking.
The legacy iOS SDK exposes basic event logging through OEGManager and includes an AdjustTracking helper for Adjust-specific flows.
Use OEGManager when you want simple SDK-level logging. Use AdjustTracking when your game owns explicit Adjust event tokens and callback parameters.
Log custom events with OEGManager
[[OEGManager sharedManager] logEvent:@"login" withValues:nil];
[[OEGManager sharedManager] logEvent:@"tutorial_complete"
withValues:@{
@"step": @"5",
@"character": @"mage"
}];
Use stable event names across Android and iOS so analytics dashboards stay aligned.
Use Adjust tracking directly
If your app integrates Adjust event tokens directly, the framework includes AdjustTracking.
#import <OEGFramework/AdjustTracking.h>
AdjustTracking *tracking = [AdjustTracking shareTracking];
[tracking setupWithAppToken:@"YOUR_ADJUST_APP_TOKEN"];
[tracking trackEventToken:@"EVENT_TOKEN_LOGIN"];
Track events with custom parameters
The framework now supports sending callback parameters without revenue:
[[AdjustTracking shareTracking] trackEventToken:@"<token>"
parameters:@{
@"user_id": @"12345",
@"amount": @"10",
@"server_id": @"SV01",
@"os": @"iOS"
}];
Typical event shapes:
// level_achieved
[[AdjustTracking shareTracking] trackEventToken:@"<token>"
parameters:@{
@"user_id": @"12345",
@"amount": @"10",
@"server_id": @"SV01",
@"os": @"iOS"
}];
// tutorial_completion
[[AdjustTracking shareTracking] trackEventToken:@"<token>"
parameters:@{
@"user_id": @"12345",
@"server_id": @"SV01",
@"os": @"iOS"
}];
// app_opened
[[AdjustTracking shareTracking] trackEventToken:@"<token>"
parameters:@{
@"user_id": @"12345",
@"session_id": @"sess_abc",
@"os_version": [[UIDevice currentDevice] systemVersion],
@"time_open": [NSString stringWithFormat:@"%lld", (long long)[[NSDate date] timeIntervalSince1970]]
}];
// vip_achieved
[[AdjustTracking shareTracking] trackEventToken:@"<token>"
parameters:@{
@"user_id": @"12345",
@"vip_level": @"3",
@"total_spent": @"500",
@"time_to_vip": @"72"
}];
Track revenue events
Revenue-only example:
[tracking trackEventToken:@"EVENT_TOKEN_PURCHASE"
revenue:9.99
currency:@"USD"
transactionId:@"TRANS_123456"];
Revenue with callback parameters:
[[AdjustTracking shareTracking] trackEventToken:@"EVENT_TOKEN_PURCHASE"
revenue:9.99
currency:@"USD"
transactionId:@"TRANS_123456"
parameters:@{
@"user_id": @"12345",
@"server_id": @"SV01",
@"product_id": @"com.oeg.gift.001",
@"os": @"iOS"
}];
App Tracking Transparency
When required by your app policy, request tracking permission before sending Adjust events:
[tracking requestTrackingPermission];
Notes
OEGManageris the simpler integration point when you only need SDK-level event logging.AdjustTrackingis useful when your game manages event tokens explicitly.- Use
[AdjustTracking shareTracking]instead of creating your own instance. parametersshould contain string key-value pairs because they are sent as Adjust callback parameters.- Keep revenue and transaction identifiers consistent with the purchase flow you expose to players.