# Enum CommissioningStyle

java.lang.Object
java.lang.Enum<CommissioningStyle>
com.codename1.home.commissioning.CommissioningStyle

All Implemented Interfaces:
  `Comparable<CommissioningStyle>`

public enum CommissioningStyle extends Enum<CommissioningStyle>
How a backend adds a new accessory, so an app can word its own button honestly.

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `ECOSYSTEM_APP_HANDOFF`
  Your app cannot do it, but it can send the user to the ecosystem app that can.
  `NONE`
  Not possible from this platform at all -- watchOS, tvOS, macOS, or an Android device with no Play services.
  `OS_OWNED_UI`
  The operating system runs the whole flow in its own UI, over your app.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static CommissioningStyle`
  `valueOf(String name)`
  Returns the enum constant of this type with the specified name.
  `static CommissioningStyle[]`
  `values()`
  Returns an array containing the constants of this enum type, in the order they are declared.

  ### Methods inherited from class Enum

  `clone, compareTo, equals, getDeclaringClass, getEnumValues, hashCode, name, ordinal, setEnumValues, toString, valueOf`

  ### Methods inherited from class Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### OS_OWNED_UI

    public static final CommissioningStyle OS_OWNED_UI

    The operating system runs the whole flow in its own UI, over your app.

    What both mobile backends do: iOS presents the `MatterSupport` add-device sheet, Android presents the Play services commissioning activity. Your app hands over a setup payload and a preference for where the accessory should land, and gets a single result when the user is finished.

    There is no progress reporting inside it, and the user can take a long time -- they may have to unscrew a fitting. Do not put a spinner with a short timeout behind this.

  - ### ECOSYSTEM_APP_HANDOFF

    public static final CommissioningStyle ECOSYSTEM_APP_HANDOFF

    Your app cannot do it, but it can send the user to the ecosystem app that can.

    `Commissioner.openEcosystemApp()` is the whole capability here.

    An iOS build that commissions onto a fabric of its own answers this on iOS 16.1 through 16.3: Apple's Matter framework starts at 16.4, so the generated extension is built for 16.4 and those releases cannot load it. The app itself still runs, and hands off.

  - ### NONE

    public static final CommissioningStyle NONE
    Not possible from this platform at all -- watchOS, tvOS, macOS, or an Android device with no Play services.

- ## Method Details

  - ### values

    public static CommissioningStyle[] values()
    Returns an array containing the constants of this enum type, in the order they are declared.
    Returns:
      an array containing the constants of this enum type, in the order they are declared

  - ### valueOf

    public static CommissioningStyle valueOf(String name)
    Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum type has no constant with the specified name
      `NullPointerException` - if the argument is null