createDynamicLink method

Future<Uri> createDynamicLink(
  1. {required String linkPath,
  2. required String title,
  3. required String description,
  4. required String imageUrl,
  5. bool? short}
)

Implementation

Future<Uri> createDynamicLink({
  required String linkPath,
  required String title,
  required String description,
  required String imageUrl,
  bool? short,
}) async {
  print("Getting uri");
  final DynamicLinkParameters parameters = DynamicLinkParameters(
      uriPrefix: "https://nowu.page.link",
      link: Uri.parse("https://now-u.com/$linkPath"),
      androidParameters: AndroidParameters(
        packageName: "com.nowu.app",
        minimumVersion: 0,
      ),
      //TODO IOS needs fixing
      iosParameters: IOSParameters(
        bundleId: "com.google.FirebaseCppDynamicLinksTestApp.dev",
        minimumVersion: '0',
      ),
      socialMetaTagParameters: SocialMetaTagParameters(
        title: title,
        description: description,
        imageUrl: Uri.parse(imageUrl),
      ));
  Uri url;
  if (short == false) {
    url = await FirebaseDynamicLinks.instance.buildLink(parameters);
  }
  // Short is either null or true
  else {
    final ShortDynamicLink shortLink =
        await FirebaseDynamicLinks.instance.buildShortLink(parameters);
    print(shortLink.toString());
    url = shortLink.shortUrl;
  }
  return url;
}