Dynami c ссылки DeepLink.path пустая проблема - PullRequest
0 голосов
/ 15 апреля 2020

Я использую firebase_dynamic_links: ^ 0.5.0 + 11 Я создаю динамическую ссылку Firebase c, и я могу запустить свое приложение по ссылке Dynami c (https://myapp.page.link/test ) Я пытаюсь прочитать deepLink.path , но он пуст (не нулевой) в Android и Ios.

  void initState() {
    super.initState();
    initDynamicLinks();
  }

 void initDynamicLinks() async {
    final PendingDynamicLinkData data =
        await FirebaseDynamicLinks.instance.getInitialLink();
    final Uri deepLink = data?.link;
    print("---initDynamicLinks");
    if (deepLink != null) {
      toast("---deeplink---"+deepLink.path);
      print(deepLink.path);
    }

    FirebaseDynamicLinks.instance.onLink(
        onSuccess: (PendingDynamicLinkData dynamicLink) async {
      final Uri deepLink = dynamicLink?.link;
      print('--onLinkSuccess');
      if (deepLink != null) {
      toast("---deeplink---"+deepLink.path);
      print(deepLink.path);
      }
    }, onError: (OnLinkErrorException e) async {
      print('onLinkError');
      print(e.message);
    });
  }

Флаттер доктор:

[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Mac OS X 10.15.4 19E266, locale tr-TR)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 11.4)
[!] Android Studio (version 3.4)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.44.0)
[✓] Connected device (1 available)

Ответы [ 2 ]

0 голосов
/ 16 апреля 2020

На самом деле мы можем обрабатывать реальные ссылки. В моем случае моя диплинк mylink.page.link/test реальная ссылка mypage.com это неверный путь. Я изменил свою реальную ссылку на: mypage.com/test, а затем обработал «тестовое» значение

0 голосов
/ 16 апреля 2020

Вы можете отладить свою динамическую c ссылку, добавив ?d=1 конец ее

Пример: https://myapp.page.link/test?d=1

После этого нажмите на часть рабочего стола, чтобы увидеть, перенаправлен на правильную ссылку. Если эта ссылка не имеет пути, то, вероятно, вы не поймете ее в своем приложении.

Проверьте процесс установки, чтобы тщательно добавить глубокую ссылку в вашу динамическую c ссылку.

firebase console screenshot

Если вы добавили глубокую ссылку без пути, например mycompany.com, ваш путь будет пустым.

Используйте URL с путем, таким как:

mycompany.com/products?item=5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...