Nosmai  Effects Nosmai  Moderation Nosmai Try-ons coming soon
Docs menu Flutter
Reference

Flutter API reference

Look up the nosmai_effects_sdk 1.0.2 preview widget, lifecycle, effects, cloud, beauty, media, output, and game APIs.

Platform Flutter SDK version 1.0.2 Updated Aug 22, 2026 Time 12 min

Entry points

APIPurpose
NosmaiFlutter.initialize(licenseKey)Initializes the native SDK once and returns whether startup was accepted
NosmaiFlutter.instanceShared operational API after initialization
NosmaiCameraPreviewNative camera preview with optional automatic game-tap forwarding
NosmaiCameraPreviewControllerReinitializes an attached preview when explicit recovery is required
NosmaiCameraLifecycleMixinCoordinates cleanup with Flutter application lifecycle

Camera lifecycle

Use configureCamera, startProcessing, stopProcessing, switchCamera, pauseCamera, resumeCamera, detachCameraView, reinitializePreview, and cleanup. Await asynchronous operations and keep only one mounted preview. NosmaiCameraPreview starts the native view through the supported widget path; do not also create a Flutter camera controller for the same device.

Packages and state

applyEffect(path) is the unified package operation. applyFilter(path) is a filter-specific compatibility surface. Inspect getActiveEffects, getActiveFilterInfo, and getActiveEffectInfo; clear with clearFilter, clearAREffect, removeEffect, removeAllFilters, or clearAll according to the intended scope.

Use getEffectParameters, getEffectParameterValue, setEffectParameter, and setEffectParameterString only with names declared by the active authored package.

Local and Cloud Filters

APIUse
getLocalFilters()Returns the installed local catalog
getAllLocalFilters()Returns catalogs grouped by local package type
getLocalEffects() / getLocalBackgrounds() / getLocalBeautyEffects() / getLocalGames()Returns one typed local subset
getCloudFilters(...)Fetches the licensed cloud catalog with type and pagination options
downloadCloudFilter(filterId)Downloads or reuses a verified cached package and returns its local path
removeCloudFilter(filterId)Removes that cloud package from SDK-managed storage

Keep the cloud identifier and use the returned local path for application. The operating system may reclaim cache storage, so handle a missing path by downloading again.

Beauty, background, and camera hardware

The shared API exposes beauty, colour, makeup, reshape, eye-colour, and manual background controls. Check isBeautyFilterEnabled, isCloudFilterEnabled, and isAdvancedFiltersEnabled before presenting gated controls. Flash and torch use hasFlash, hasTorch, mode getters, and mode setters.

Games and media

  • isGameReady, sendGameTap, sendGameInput, pauseGame, resumeGame, and restartGame control an active game.
  • gameEvents, licenseStatusStream, errorStream, download progress, and recording progress expose asynchronous state.
  • capturePhoto, startRecording, stopRecording, and gallery-save helpers return typed result models.

Call dispose() on the shared Dart wrapper only when the application no longer needs the SDK process. Ordinary screen navigation should use the documented preview lifecycle instead of repeatedly destroying global state.

References

Was this page helpful?

Your response helps us prioritize documentation improvements.

Nosmai

An AR and AI company. Founded on the idea that the next decade of software will be visual, and that the tools for it should be within reach of anyone building.

Newsletter

Product updates and release notes. No spam.

© 2026 nosmai, inc · all rights reserved