Nosmai  Effects Nosmai  Moderation Nosmai Try-ons coming soon
Docs menu iOS
How-to guide

Bundle an Asset Store filter in iOS

Ship a protected .nosmai package inside the iOS application bundle and apply its discovered typed entry.

Platform iOS SDK version 3.0.4 Updated Aug 22, 2026 Time 6 min

Prerequisites

  • A working iOS quickstart
  • A downloaded .nosmai package and its required resources

Add the package resources

Add one folder under the Xcode target's nosmai_filters bundle directory:

nosmai_filters/heart_face/
  heart_face.nosmai
  heart_face_manifest.json
  heart_face_preview.png

Confirm target membership and Copy Bundle Resources. The package name and companion filenames must use the same base name.

Discover and apply it

NSArray<NosmaiFilterInfo *> *filters =
    [[NosmaiSDK sharedInstance] getFilters];
NosmaiFilterInfo *filter = filters.firstObject;

[[NosmaiSDK sharedInstance]
    applyEffectInfo:filter
         completion:^(BOOL success, NSError *error) {
  if (!success) NSLog(@"Apply failed: %@", error.localizedDescription);
}];

Use the returned typed item and asynchronous completion. Do not construct a bundle path in production UI.

Verify it worked

Disable network access after license verification and apply the item again. The bundled package should remain available.

Common errors

SymptomFix
getFilters is emptyCheck the exact nosmai_filters directory and target membership
Preview is missingInclude the matching external preview file
Apply failsVerify package compatibility and inspect the completion error

Next steps

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