Init IOS SDK

Gotadi SDK Integration Guide for iOS

Import Gotadi SDK into an iOS Project

Add the Library Using Swift Package Manager

Use the SDK link above to add the library to your project via Swift Package Manager.

Build the project for the first time to import the GotadiSDK library.

Example Code to Initialize IOSGotadiSDK

  • Import IOSGotadiSDK

  • Initialize IOSGotadiSDK in viewDidLoad for performance optimization.

  • Init SDK and set up the partner environment with the following parameters:

    • env: Deployment environment [uat | prod]

    • partnername: Partner name, e.g., "vib"

    • language: Display language ["vi" | "en"]

    • token: JWT token obtained after authentication via Gotadi's API

    • theme: primary, secondary

import UIKit
import IOSGotadiSDK
class ViewController: UIViewController {
    let gotadiSDK: IOSGotadiSDK = IOSGotadiSDK.shared
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.

        //TODO: Call API authorize get Token from Gotadi
        gotadiSDK.setup(partnerSetting:
                        GotadiPartnerSetting(
                            env: "uat",
                            partnername: "vib",
                            language: "en", token: "token", theme: "primary"))
    }

        //TODO: Handle action push to gotadi search book
    @IBAction func gotoGotadiSearchBook(_ sender: Any) {
        gotadiSDK.pushToHomePartner(
            partnerViewController: self,
            handlePayment: {[weak self] gotadiViewController, bookingNumber in
                //TODO: Handle payment after checkout and receive bookingInfo
                print(bookingNumber)
                if let paymentViewController  =
                    self?.storyboard?.instantiateViewController(withIdentifier: "PaymentViewController")
                    as? PaymentViewController {
                        paymentViewController.bookingNumberResult = bookingNumber
                        gotadiViewController.navigationController?.pushViewController(paymentViewController, animated: true)
                }
        })
    }
}

Last updated