UI Layer#

The UI Layer is the highest level of the HAAPI SDK stack and the recommended starting point for iOS and Android applications. It offers prebuilt, theme-able UI components — HaapiUIKit for iOS and HaapiUIWidget for Android — that handle the entire authentication flow with minimal client code.

There is no UI Layer for React Native. React Native apps own their UI in React components driven by the HaapiResponse discriminated union — see React Native Representations .

Reading order. Start with the UI Layer Overview, then your platform’s entry page. The shared topic pages (Theming, UI Extensibility, …) use iOS / Android tabs and can be read in any order once the platform entry is familiar.

Foundational#

Layer overview and per-platform entry points.

PageTopic
UI Layer Overview What the UI Layer is, when to choose it over the SDK Layer
iOS UIKit Install IdsvrHaapiUIKit, build HaapiUIKitApplication, link to the autodoc
Android UIWidget Install the Maven artifact, build HaapiUIWidgetApplication, link to the autodoc

Configuration and Topics#

Cross-platform topics shown with iOS / Android tabs. Each page covers configuration parameters, customisation hooks, and per-platform notes.

PageTopic
Configuration (UI Layer) Builder options for both platforms, server URLs, redirect URI
Flow Lifecycle (UI Layer) Starting the flow, receiving the OAuth token model, presenter lifecycle
Presentation Options (UI Layer) Modal vs stack presentation, polling cadence, external-browser handoff
Theming (UI Layer) Colour and typography keys, light / dark mode, brand integration
UI Extensibility (UI Layer) Replacing screens, view-controller factories, custom step renderers
Passkeys and WebAuthn Fallback (UI Layer) Passkey-first sign-in with password fallback

Platform-Specific Features#

Pages that apply to only one platform.

PageTopic
App Extension Support (iOS Only) Running the UI flow inside an iOS App Extension
App Widget Support (Android Only) Embedding HAAPI sign-in inside an Android App Widget
Previewer Host Activity (Android Only) Android-side preview tooling for designers and reviewers
Preview Tools (UI Layer) iOS UIKit Previewer for theme and step iteration in Xcode

Operational#

PageTopic
Logging (UI Layer) UI-layer follow-up tags, sensitive-value masking, custom sinks

Was this helpful?