Skip to main content
The SDK ships with sensible defaults. Customization is available at three levels of depth.

Level 1 - Text and colors

Almedia → Settings exposes visible string and primary color on the link popup, notification card, and activity overlay. Edit those fields directly - the built-in prefabs read the settings asset and apply it at runtime. No code and no writable prefab are needed. To preview your changes, enter Play mode - the editor mock bridge drives the UI, so the popup, notification card, and overlay render with your settings.
The settings asset is the default layer. A host runtime theming or localization system (Unity Localization Package’s LocalizeStringEvent, dynamic theming, etc.) attached to a UI element still wins, because those components initialize after the SDK applies the settings. To fully hand-author a prefab, see Level 2 and untick its Apply Host Settings checkbox so these settings are not overlaid onto it.

Level 2 - Prefab Variants

For anything beyond text and primary colors (layout changes, custom fonts, additional elements, full re-skin):
  1. Right-click the default prefab in Packages/com.almedia.sdk/Runtime/Prefabs/LinkPopup.prefab (or NotificationCard.prefab, ActivityOverlay.prefab) and choose Create → Prefab Variant.
  2. Save the variant into a host-owned folder, for example Assets/UI/Almedia/MyLinkPopup.prefab.
  3. Edit the variant freely. Keep the same root component (LinkPopupController, etc.); the SDK looks up serialized references on the root.
  4. Assign the variant where the SDK takes it from:
    • Link popup → the LinkButton prefab’s (or your scene instance’s) Link Popup field. For ShowLink(), Almedia → Settings → Default UI Prefabs → Link Popup.
    • Notification card / activity overlay → Almedia → Settings → Default UI Prefabs.
The SDK instantiates the variant instead of the default. If you hand-author the variant’s strings and colors, untick Apply Host Settings on its root so the Level 1 settings are not overlaid at runtime; leave it ticked to keep the variant themable from settings. Properties you don’t change in the variant continue to inherit from the base prefab and receive SDK updates on package upgrade.

Level 3 - Build your own UI

Disable the default notification UI in settings, then implement the visuals directly by subscribing to OnNotificationsReceived, OnStatusChanged, and OnLinkCompleted. The SDK still drives status, notification fetching, and linking; the host manages the UI flow. For the link popup, derive from AlmediaLinkPopupController instead; see Your own popup design. Disabling the toggle also clears the notification prefab references to the bundled SDK prefabs, so those prefabs and their art stay out of your build. A prefab you assigned yourself stays assigned - and, like any asset your project references, still ships.