OnboardingIDManaging

public protocol OnboardingIDManaging : AnyObject

Implementers should manage the onboarding ID of the onboarding sesssions.

  • Implementer should decide what kind of flow should start based. For example in case of single-user applications the decision is based on whether there is a store onboardingID while in case of multi-user applications the implementer can present a UI where the user selects to restore an already existing session or creates a new one.

    Declaration

    Swift

    func flowToStart(completionHandler: @escaping (_ flowType: OnboardingFlow.FlowType) -> Void)

    Parameters

    completionHandler

    must be called with the proper response

  • Implementers must store the onboardingID in a way it can be retrieved later when the flowToStart method is called.

    Declaration

    Swift

    func store(onboardingID: UUID, completionHandler: @escaping (Error?) -> Void)

    Parameters

    onboardingID

    onboardingID to store

    completionHandler

    must be called when finished

  • Implementers should remove the stored onboardingID

    Declaration

    Swift

    func remove(onboardingID: UUID, completionHandler: () -> Void)

    Parameters

    onboardingID

    onboardingID to remove

    completionHandler

    must be called when finished