Skip to main content
SDKsAndroid

Versioning and payload contract

SemVer policy for the MotiSig Android SDK and the rich image payload contract.

Image payload contract

The Android example helper (PushImageUrl) and the iOS / Expo helpers resolve the first non-empty match from:

  1. _motisig.imageUrl / _motisig.image_url / _motisig.image (MotiSig AI canonical)
  2. _richContent.image (Expo push relay)
  3. fcm_options.image (FCM relay)
  4. Top-level image / imageUrl / image_url

(The Android helper also considers sorted ios_attachment_*_url keys for cross-platform payloads.)

A single server payload that uses _motisig.imageUrl lights up the banner image wherever the right delivery setup is in place. See Rich notification images.

Versioning

The Android SDK follows semantic versioning. Changes considered breaking:

  • Removing or renaming a public symbol in the ai.motisig.sdk package.
  • Changing a method signature in MotiSigNotificationListener, MotiSigFirebaseMessagingService, or MotiSigError.
  • Adding a new required parameter to MotiSig.initialize or to a public model constructor.
  • Renaming or removing a MotiSigError subclass.
  • Changing the canonical push payload keys (_motisig.imageUrl, messageId, etc.) on the wire.
  • Raising minSdk above 21.

Additive changes (new methods, new optional parameters, new MotiSigNotification fields with sensible defaults) are minor or patch.

Release notes: CHANGELOG.