Try out the demo app

Get your hands on the real experience with the demo application

General

To get a better idea of the system, we suggest setting up and building a test iOS application, and then see the results of its work in the Management Console.

You can get the latest demo Xcode project from the repository:

Instructions from the README file can be omitted, since they have already been implemented in the latest version of the project

After you open the project in the Xcode, locate the AppDelegate.swift file and fill the "carrierId" variable with the value of ProjectID for your project:

CakeTube.instance().configure(CTConfig.create { (c) in
            c.baseUrl = "https://backend.northghost.com"
            c.carrierId = ""
            c.vpnProtocol = .ikEv2
            c.vpnProfileName = "CakeTubeSDK App"
        })

You can find the ProjectID value in the upper right corner of the Management Console, below the project name

ProjectID is set on the project creation form and cannot be changed after that

Build the project and run it in the simulator. The running application should look like this:

Be aware that simulation of iOS device does not support opening of the VPN sessions and is limited to log in function

Try to log in by clicking the respective button and take a look on the Users page of the Management Console:

You can get a detailed information on the test user by clicking on the row:

As you can see, the demo app successfully established connection with the oAuth server and acquired an access token:

Possible issues

  • Due to the fact that Xcode and iOS versions are constantly updated, an error may occur:

Building for iOS Simulator, but the linked and embedded framework was build for iOS + iOS Simulator

This problem can be fixed by setting the following value for the parameter "Validate Workspace" in the "Build settings" section of the target:

  • If you are building the project on the M1 Apple Silicon, you can also get another error:

Building for iOS Simulator, but linking in dylib built for iOS

In order to fix it, you will need to add "arm64" into the "Excluded Architecture" of target's Build settings

It would probably be missing in the list, you need to type it in

Last updated