createDeepLink method
Future<DeferredLinkResponse?>
createDeepLink({
- required DeepLinkProvider provider,
- Map<
String, dynamic> ? universalProps, - Map<
String, dynamic> ? linkProps,
override
Creates a deferred deep link for the selected provider.
Implementation
@override
Future<DeferredLinkResponse?> createDeepLink(
{required DeepLinkProvider provider,
Map<String, dynamic>? universalProps,
Map<String, dynamic>? linkProps}) async {
switch (provider) {
case DeepLinkProvider.branch:
try {
if (universalProps == null && linkProps == null) {
return DeferredLinkResponse.error(
errorCode: 'propsMissing',
errorMessage: 'Universal and Link props are mandatory',
);
}
final BranchResponse<dynamic> branchLinkResponse =
await BranchLinkManager()
.createDeepLink(universalProps!, linkProps!);
if (branchLinkResponse.success) {
return DeferredLinkResponse.success(
result: branchLinkResponse.result);
}
return DeferredLinkResponse.error(
errorCode: branchLinkResponse.errorCode,
errorMessage: branchLinkResponse.errorMessage,
);
} catch (_) {
rethrow;
}
case DeepLinkProvider.appsflyer:
throw LanguageError('Appsflyer Deeplink Provider is in development');
case DeepLinkProvider.adjust:
throw LanguageError('Adjust Deeplink Provider is in development');
}
}