Follow these steps to have a basic integration of the app's miles® SDK in your iOS application.

iOS Quickstart

Estimated time: 20 minutes

This guide will go over:

  • Conditions and minimum requirements

  • Installation 📦

  • Configuration

  • Initialization

  • Attaching 🔗

Conditions and minimum requirements

Minimum iOS version : 8.0 Minimum XCode version : 8

I. Installation


source 'https://gitlab.appsmiles.eu/appsmiles/APMSpecs.git'
source 'https://github.com/CocoaPods/Specs.git'
pod 'APM', '~> 5.3.0'

https://gitlab.appsmiles.eu is a private repository, you need a login and a password Set the login and password on next pod install or pod update Contact us to get a login and password

The APM SDK for iOS provides many functionalities, UI components and countless customization options at a high performance, requiring somewhat more storage space than a simpler framework would. Nonetheless, the SDK contributes only 4 MB to the final size of your application, thanks to various optimization steps that occur during the compilation and App Store submission processes.

iOS dependencies

Our SDK use the dependencies lottie-ios to work.

# Dependency for APM
s.dependency 'APMServices', '4.3.0'
s.dependency 'lottie-ios'

For more information about lottie-ios, click here

II. Configuration

Add these frameworks SystemConfiguration, MessageUI and CoreLocation

Capture d’écran 2015-10-23 à 11.53.35

Add these three entries to info.plist :

  • APMPartnerID

  • APMPartnerSecret

  • apm_appsmiles.ttf in « Fonts provided by application »​

III. Initialization

In YourAppDelegate.h, import APMHeaders.h

#import <APM/APMHeaders.h>

In YourAppDelegate.m, implement URL Scheme callback

-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
BOOL urlCatched = [[APM sharedInstance] handleOpenURL:url];
return urlCatched;

In the method application:didFinishLaunchingWithOptions, create an instance of APM:

APM *apm = [APM sharedInstance];

Set the baseUrl of API:

apm.baseUrl = <URL_API>;







We host projects on multiple servers, double check with us or your team to verify the base URL

IV. Attaching

Attaching to a « ViewController »

Import APMHeaders.h

#import <APM/APMHeaders.h>

You can extend your GlobalViewController with APMClientViewController or APMClientNavigationController or APMClientTabBarController

@interface GlobalViewController : APMClientViewController
@interface GlobalViewController : APMClientNavigationController
@interface GlobalViewController : APMClientTabBarController

Add the following methods in your GlobalViewController

  • viewDidLoad:controller;

  • viewWillAppear:controller;

  • viewDidAppear:controller;

  • viewWillDisappear:controller;

  • viewDidDisappear:controller;

-(void)viewDidLoad {
[super viewDidLoad];
[APMClientViewControllerUtils viewDidLoad:self];
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[APMClientViewControllerUtils viewWillAppear:self];
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[APMClientViewControllerUtils viewDidAppear:self];
-(void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[APMClientViewControllerUtils viewWillDisappear:self];
-(void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[APMClientViewControllerUtils viewDidDisappear:self];

You're done with the installation !

And the banner appear !

Head to the next section to start integrating our SDK into your app's features.