Skip to content

ticketmaster/iOS-TicketsDemoApp

Repository files navigation

iOS Tickets SDK Application Integration Demo

This is an example integration of the Ticketmaster Ignite SDK, Tickets framework.

Change Log

Demo App Screenshots

Main Menu Login Events Listing Page Tickets Listing Page

Getting Started

  1. Open TicketsSDKDemoIntegration.xcodeproj in Xcode 15.0.1+
    1. This will also download the required .xcframeworks using Swift Package Manager
  2. Update Configuration.swift with your own API key, available from https://developer.ticketmaster.com/explore/
  3. Update TicketsSDKDemoIntegration target's Signing & Capabilities with your own Apple Developer certificate from https://developer.apple.com/
  4. Build and Run TicketsSDKDemoIntegration target

Example Code

Configuration

  1. Update your API key and branding colors in Configuration.Swift

  2. Authentication SDK is configured using settings from Configuration.Swift

  3. Tickets SDK inherits it's configuration from Authentication SDK

A basic example of this is provided in MainMenuVC+Config.swift

Presentation

There are 3 different ways to present the Tickets SDK:

  • Push on Navigation stack (requires a UINavigationController in your app)
  • Modal presentation on top of your own UIViewController (easiest to integrate)
  • Embedded presentation within your own UIViewController (hardest to integrate)

Select the presentation method that best matches how you wish to present Tickets SDK within your own application.

Basic examples of all 3 methods is provided in MainMenuVC+TableViewDelegate

Authentication

While not required, your application may want to control login-related processes directly.

  • Login
  • Member Info
  • Logout

Tickets SDK handles Login/Logout on it's own, so there is no need for you to manually call any of these methods.

However, basic examples of calling Login, MemberInfo, or Logout have been provided in MainMenuVC+TableViewDelegate.

Information

While not required, your application may want to be informed of operations and use behavior with Authentication and Tickets SDKs.

This information is provided via delegate protocols, basic examples are provided.

  • TMTicketsOrderDelegate: optional delegate to be informed of non-analytics User-actions
    • see: MainMenuVC+OrderDelegate.swift
  • TMTicketsAnalyticsDelegate: optional delegate to be informed of User behavior
    • see: MainMenuVC+AnalyticsDelegate.swift
  • TMAuthenticationDelegate: optional delegate to recieve login state change information
    • see: MainMenuVC+AuthDelegate.swift

Custom Modules

Custom Modules

While not required, your application may want to use Prebuilt Modules or even create your Custom Modules to display underneath the Tickets on the Tickets Listing page.

  • TMTicketsModuleDelegate: optional delegate to implement prebuilt and custom TMTicketsModule to be rendered on the Tickets listing page
    • see: MainMenuVC+ModuleDelegate.swift

About

iOS Ignite/Ticketmaster SDK, Tickets framework demo integration

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages