OnLaunch is a service allowing app developers to notify app users about updates, warnings and maintenance
Our open-source framework provides an easy-to-integrate client to communicate with the backend and display the user interface.
Features
Display customizable messages to your app users
Set your app into maintenance mode with blocking messages
Easy to integrate with SwiftUI and UIKit
Installation
You can integrate OnLaunch into your project using Swift Package Manager.
In Xcode, go to File –> Swift Packages –> Add Package Dependency.
Paste the package repository URL: https://github.com/kula-app/OnLaunch-iOS-Client
Choose the desired version or branch (e.g. main for the latest development version).
Select the target where you want to add OnLaunch.
Click Finish to complete the integration.
Usage
Apps built with SwiftUI
Import the OnLaunch iOS client into your App file:
import OnLaunch
Apply the configuration view modifier on your root content View to set your public key:
@main
struct MainApp: App {
var body: some Scene {
WindowGroup {
ContentView()
.configureOnLaunch { options in
// Configure the public key to authenticate with the API endpoint
options.publicKey = "<YOUR PUBLIC APP KEY>"
}
}
}
}
Optionally configure the OnLaunch client by modifying the options:
...
.configureOnLaunch { options in
// Configure the public key to authenticate with the API endpoint
options.publicKey = "<YOUR PUBLIC APP KEY>"
// (Optional) Configure a custom base URL to your API host
// options.baseURL = "https://your-domain.com/api"
}
...
Apps built with UIKit
Import the OnLaunch iOS client into your SceneDelegate file:
import OnLaunch
Configure the client with your public key and set the hostScene:
func sceneDidBecomeActive(_ scene: UIScene) {
OnLaunch.configure { options in
// Configure the public key to authenticate with the API endpoint
options.publicKey = "K2UX4fVPFyixVaeLn8Fky_uWhjMr-frADqKqpOCZW2c"
// Configure the host scene to present the UI
options.hostScene = scene
// or: configure the host view controller to present the UI
// options.hostViewController = (scene as? UIWindowScene)?.keyWindow?.rootViewController
}
}
Optionally configure the OnLaunch client by modifying the options:
...
.configureOnLaunch { options in
// Configure the public key to authenticate with the API endpoint
options.publicKey = "<YOUR PUBLIC APP KEY>"
// (Optional) Configure a custom base URL to your API host
// options.baseURL = "https://your-domain.com/api"
}
...
You can also configure OnLaunch inside your AppDelegate in case your app does not use scenes.
Options
The OnLaunch iOS client provides a couple of configuration options:
Name
Description
Default
baseURL
Base URL where the OnLaunch API is hosted at. Change this to point to your self-hosted instance of the OnLaunch server.
https://onlaunch.kula.app/api/
publicKey
Public key used to authenticate with the API
shouldCheckOnConfigure
Flag indicating if the client should check for new messages immediately after it has been configured.
true
hostScene
Scene used to host the OnLaunch client UI. Required if you use UIKit with scenes
hostViewController
An instance of UIViewController used to host the OnLaunch client UI. Required if you use UIKit without scenes
theme
Custom theme used by the OnLaunch client UI. Adapt the values to change the theme to match your preferences. To see all possible configuration values, see Theme.swift
Default values as defined in Theme.standard in Theme.swift
OnLaunch iOS Client
Created and maintained by kula.app and all the amazing contributors.
OnLaunch is a service allowing app developers to notify app users about updates, warnings and maintenance Our open-source framework provides an easy-to-integrate client to communicate with the backend and display the user interface.
Features
Installation
You can integrate
OnLaunch
into your project using Swift Package Manager.https://github.com/kula-app/OnLaunch-iOS-Client
main
for the latest development version).OnLaunch
.Usage
Apps built with SwiftUI
OnLaunch
iOS client into yourApp
file:View
to set your public key:OnLaunch
client by modifying theoptions
:Apps built with UIKit
OnLaunch
iOS client into yourSceneDelegate
file:hostScene
:OnLaunch
client by modifying theoptions
:You can also configure OnLaunch inside your
AppDelegate
in case your app does not use scenes.Options
The OnLaunch iOS client provides a couple of configuration options:
baseURL
https://onlaunch.kula.app/api/
publicKey
shouldCheckOnConfigure
true
hostScene
hostViewController
UIViewController
used to host the OnLaunch client UI. Required if you use UIKit without scenestheme
Theme.swift
Theme.standard
in Theme.swiftContributing Guide
Please see our Contributing Guide.
License
Distributed under the MIT License