LowLightBoostClient

@DoNotMock(value = "Use canonical fakes instead.")
public interface LowLightBoostClient extends HasApiKey, OptionalModuleApi


The Low Light Boost client is used to provide availability checks and module installation. The client also provides a way to create a LowLightBoostSession.

Summary

Nested types

A callback for the module installation status.

Public methods

abstract @NonNull Task<LowLightBoostSession>

Creates a LowLightBoostSession.

abstract @NonNull Task<@NonNull Boolean>
installModule(
    @NonNull Context context,
    LowLightBoostClient.InstallStatusCallback installStatusCallback
)

Installs the LowLightBoost module.

abstract @NonNull Task<@NonNull Boolean>

Queries whether a camera supports low light boost.

abstract @NonNull Task<@NonNull Boolean>

Checks if the module is supported on this device.

abstract @NonNull Task<@NonNull Boolean>

Checks if the module is already installed.

abstract @NonNull Task<@NonNull Void>

Marks the LowLightBoost module as no longer needed for this application.

Public methods

createSession

abstract @NonNull Task<LowLightBoostSessioncreateSession(
    @NonNull LowLightBoostOptions options,
    @NonNull LowLightBoostCallback callback
)

Creates a LowLightBoostSession.

A low light boost session manages the necessary camera capture targets for a low light capture session and provides rendering to a target surface, which the app can then display and encode as video or as a still image.

Parameters
@NonNull LowLightBoostOptions options

The options for the session.

@NonNull LowLightBoostCallback callback

An implementation of LowLightBoostCallback.

installModule

abstract @NonNull Task<@NonNull BooleaninstallModule(
    @NonNull Context context,
    LowLightBoostClient.InstallStatusCallback installStatusCallback
)

Installs the LowLightBoost module.

Parameters
@NonNull Context context

A context.

isCameraSupported

abstract @NonNull Task<@NonNull BooleanisCameraSupported(@NonNull String cameraId)

Queries whether a camera supports low light boost.

Parameters
@NonNull String cameraId

The camera id to query.

isDeviceSupported

abstract @NonNull Task<@NonNull BooleanisDeviceSupported(@NonNull Context context)

Checks if the module is supported on this device.

Only devices which support low light boost will be able to create a LowLightBoostSession.

Parameters
@NonNull Context context

A context.

isModuleInstalled

abstract @NonNull Task<@NonNull BooleanisModuleInstalled(@NonNull Context context)

Checks if the module is already installed.

Parameters
@NonNull Context context

A context.

releaseModule

abstract @NonNull Task<@NonNull VoidreleaseModule(@NonNull Context context)

Marks the LowLightBoost module as no longer needed for this application. The module will be released at some point in the future.

Parameters
@NonNull Context context

A context.