zuraffa_messaging_android
The Android implementation of zuraffa_messaging:
the native messaging-store plugin (ZuraffaMessagingPlugin, Kotlin) persisting
the send log in SharedPreferences, plus the contract conformance kit
host apps run their wired channel against.
What's in the box
android/— the nativedev.zuraffa.messaging.ZuraffaMessagingPluginFlutter plugin serving the shared channel contract.AndroidMessagingContract— the Android pinning ofMessagingChannelContract.shared: platform identifier, native plugin type name, and the verbatim contract (channelplugins.zuraffa.dev/messaging, method tablesend · acknowledge · blockRecipient · sent · reset, error codeundeliverable, themsg-<channel>-<n>id grammar).
Usage
Add the platform package next to the app-facing package; then wire the Dart side over the injected bridge (see the core README):
final messaging = MessagingService()
..register(BridgeTransport('sms', MethodChannelBridge()));
Diff-check the wired channel against the shipped contract:
final kit = const AndroidMessagingContract();
expect(kit.contract, MessagingChannelContract.shared);
Libraries
- zuraffa_messaging_android
- The Android conformance kit: pins the platform identifier the package ships and the shared channel contract its native plugin implements — the diff-check anchor host apps run their wired channel against (spec 002-platform-transports).