Flutter上的Firebase动态链接

时间:2019-06-05 19:30:00

标签: firebase flutter firebase-dynamic-links

我目前正在Flutter上使用Firebase动态链接。我遵循了documentation,最后得到了自己的版本:

final DynamicLinkParameters parameters = DynamicLinkParameters(
    uriPrefix: 'https://myapp.page.link',
    link: Uri.parse('https://myapp.page.link/'+Provider.of<FirebaseUser>(context).uid),
    androidParameters: AndroidParameters(
        packageName: 'com.me.myapp',
        minimumVersion: 0,
    ),
    iosParameters: IosParameters(
        bundleId: 'com.me.myapp',
        minimumVersion: '0',
        appStoreId: '123456789',
    ),
    socialMetaTagParameters:  SocialMetaTagParameters(
        title: 'Yay',
        description: 'Click me'
    ),

);

final Uri dynamicUrl = await parameters.buildUrl();

现在我有几个问题了:

  1. 什么是uriPrefix?它需要成为合法的吗?
  2. 我可以只在链接中使用所需的信息,还是还需要包含名称空间?
  3. minimumVersion由Flutter定义。在我的情况下,它是1.0.0 + 9,但是Android的字段需要一个数字,而iOS的字段需要一个String。我应该在那放什么?
  4. 使用ShortDynamicLink有什么缺点?
  5. 我还需要Google Analytics(分析)和iTunes的参数吗?他们是干什么的?
  6. 从链接读取数据的正确位置在哪里?当链接打开应用程序时,不会调用我的LandingPage的initState()方法(这是我的ThemeData的房屋属性)。

1 个答案:

答案 0 :(得分:2)

  1. uriPrefix-这是您在Firebase控制台上可以找到的应用程序唯一链接。只需浏览至Firebase控制台>动态链接>,您将获得一个类似于https://xcvnm.app.goo.gl/的链接。这就是uriPrefix。

  2. 您应仅在应用程序中使用必需的信息。所有字段都针对不同的行为和用例。

  3. MinimumVersion可以打开链接的应用程序最低版本的versionCode。如果安装的应用程序是较旧的版本,则将用户带到Play商店升级该应用程序。 (因此,如果您要制作新的应用程序,则不需要使用此属性。)

  4. 短动态链接没有太大区别

  5. 正确的位置取决于您的应用程序结构和偏好,因此不建议这样做。

有关更多详细信息,请访问-https://firebase.google.com/docs/dynamic-links/android/create