iOS
Introduction
If you are using a non-supported or a custom engine, we also provide the Antidote SDK library so you can directly access its validation and watermark methods.
Configuration
To integrate the SDK for Custom Engines in your project:
- Download the latest version of Antidote SDK for Custom iOS Engines.
- Unzip the downloaded file and go to "custom engine" folder.
- You will find the
antidote_sdk.frameworklibrary and headers. Include them to your project.
Initialisation
- (UIViewController*)setViewController:(UIViewController *)viewController
Example:
#import "AntidoteSDK.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// ... your existing code
[[AntidoteSDK sharedInstance] setViewController:nil];
}
Validation
- (void)validate:(void (^)(BOOL))callback
Example:
#import "AntidoteSDK.h"
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
[[AntidoteSDK sharedInstance] processUrlRequest:url];
[[AntidoteSDK sharedInstance] validate:nil];
return [super application:app openURL:url options:options];
}
Touches
- (void)showTouches
Example:
#import "AntidoteSDK.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// ... your existing code
[[AntidoteSDK sharedInstance] showTouches];
}
Watermarks
Only ticker mode is currently supported. More modes will be added shortly!
- (void)showWatermark
Example:
#import "AntidoteSDK.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// ... your existing code
[[AntidoteSDK sharedInstance] showWatermark];
}
Events
- (void)emitGameEvent:(NSString *)action withName:(NSString *)event
Example:
#import "AntidoteSDK.h"
-(void)killEnemy:(NSObject *)enemy {
// ... your existing code
[[AntidoteSDK sharedInstance] emitGameEvent:@"once" withName:@"killed_enemy"];
}
All game events consist of an action and an event name, where action can be one of the following:
| Action | Description |
|---|---|
| start | mark the start of a long-running event (e.g. boss_battle) |
| end | mark the end of a long-running event (e.g. boss_battle) |
| once | emit a once-off event (e.g. collected_powerup) |
User Information
To access the Antidote User ID of the user opening the game, you can use the following function:
[[AntidoteSDK sharedInstance] getUserId]
The returned string is the user ID.
Apple Reviewers
The Antidote SDK secures your game unauthorised access when players start it directly. When you submit your app to TestFlight, an Apple reviewer will need to be able to access your game without using the Antidote app. To do this, you will need to add login credentials to your TestFlight submission.
You can generate these login credentials by logging into your account at app.antidote.gg:
- Click on
Games. - Click on your iOS game.
- Click on
Security. - If this is the first time you are configuring credentials on your game you will see the following:
- Click on
Renew Credentialsand follow the prompts.
Save the password somewhere secure as it will not be shown again once the modal is closed. If you do forget the password, you can generate new credentials on this view.