Mini knižnica pre Wallet as a Service backend, slúži na podpis a pridanie loyalty/store passu do Apple Wallet.
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()
}
}
}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).
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.