Skip to content

GoodRequest/wallet-service-ios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WalletService (iOS)

Mini knižnica pre Wallet as a Service backend, slúži na podpis a pridanie loyalty/store passu do Apple Wallet.

1. Configure po štarte appky

Zavolaj raz, pri štarte aplikácie (napr. v App init-e, v AppDelegate, alebo po načítaní konfigurácie).

import WalletService

@main
struct MyApp: App {

    init() {
            WalletPassManager.shared.configure(
                apiBaseUrl: "<API_BASE_URL>",
                apiKey: "<API_KEY>",
                passTypeIdentifier: "<PASS_TYPE_IDENTIFIER>",
                teamIdentifier: "<TEAM_IDENTIFIER>"
            )
        }
    }

    var body: some Scene {
        WindowGroup {
            RootView()
        }
    }
}

2. sync po prihlásení používateľa

Keď má appka všetky údaje potrebné na vydanie kartičky (typicky hneď po úspešnom logine), priprav pass:

import WalletService

func syncWalletPassAfterLogin(configuration: WalletPassConfiguration) {
    Task {
        await WalletPassManager.shared.sync(configuration: configuration)
    }
}

configuration naplň dátami používateľa (najmä stabilné serialNumber).

3. Použitie WalletPassButton

Vo view použi WalletPassButton s rovnakou WalletPassConfiguration:

import SwiftUI
import WalletService

struct LoyaltyCardView: View {

    let configuration: WalletPassConfiguration

    var body: some View {
        WalletPassButton(configuration: configuration) { didAdd in
            if didAdd {
                print("Pass bol pridaný do Wallet")
            }
        }
    }
}

Button zobrazí natívne Add to Wallet a otvorí systémový flow pre pridanie passu.

About

Wallet as a Service SPM implementation

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages