limelink_flutter 1.0.0
limelink_flutter: ^1.0.0 copied to clipboard
Flutter plugin for the LimeLink iOS and Android SDKs.
LimeLink Flutter SDK #
Flutter plugin bridging LimeLink Android and iOS SDK 1.0.1.
Requirements #
- Dart 3.12 or later
- Flutter 3.44 or later
- Android API 24 or later
- iOS 12 or later
Flutter 3.44 and later uses Swift Package Manager by default on iOS. Existing CocoaPods applications remain supported.
Installation #
flutter pub add limelink_flutter
Import the public API:
import 'package:limelink_flutter/limelink_flutter.dart';
Obtain a project ID from LimeLink. It must be a canonical lowercase UUID such as 550e8400-e29b-41d4-a716-446655440000.
Usage #
await LimeLink.initialize(
const LimeLinkConfig(
projectId: '550e8400-e29b-41d4-a716-446655440000',
loggingEnabled: true,
),
);
final subscription = LimeLink.events.listen((event) {
switch (event) {
case LimeLinkReceived(:final result):
// Navigate using result.deeplinkUrl.
case LimeLinkDeferredNotFound():
// Continue normal startup.
case LimeLinkFailed(:final error):
// Report the native error.
}
});
projectId must be a canonical lowercase UUID. Deferred deep links are always supported and have no initialization toggle.
Additional APIs:
final initialized = await LimeLink.isInitialized();
await LimeLink.handleIncomingLink(Uri.parse('myapp://path'));
final outcome = await LimeLink.handleDeferredDeepLink();
await subscription.cancel();
Manual deferred lookup can deliver through both its returned outcome and the event stream. Choose only one as the navigation owner. The plugin adds no replay queue; native SDK 1.0.1 owns buffered successful link delivery.
Applications must configure Android App Links and custom schemes in the Android manifest, and iOS Associated Domains and custom URL schemes in the host application. LimeLink forwards cold and warm native lifecycle links automatically. Do not feed Flutter router or initial-link events back into LimeLink when native lifecycle forwarding is enabled.
Native and bridge failures surface through PlatformException, LimeLinkFailed, or DeferredDeepLinkFailed, depending on the operation. Malformed native payloads fail strict Dart decoding with FormatException.
Native dependencies #
- Android:
org.limelink:limelink-aos-sdk:1.0.1from the official LimeLink binary Maven repository - iOS:
LimelinkIOSSDK1.0.1through Flutter-managed Swift Package Manager or CocoaPods
The plugin supports both iOS dependency managers. New Flutter projects use SwiftPM by default; CocoaPods remains available for existing applications.
Support #
- Homepage: limelink.org
- Changes: CHANGELOG.md
- License: MIT