我正在创建一个应用程序,具有类似于会所房间的功能(相同的房间概念,但不是音频特定的)。我可以使用firebase动态链接来拥有对整个应用通用的邀请代码以及特定于房间中用户的邀请代码吗?
即。一般情况: User1邀请User2加入应用程序,他们都得到了推荐奖金,User2通过了标准的入职程序。
具体情况:我也可以有特定于房间的邀请吗,User3创建Room_ABC并邀请User4加入Room_ABC;User3和User4都会获得推荐奖金,但User4的入职是独一无二的,并且在入职期间被定向到Room_ABC。
发布于 2021-05-29 05:33:29
是的你可以。动态链接可以具有参数
对于这两种情况,我都会使用URL参数:
1用户的常规共享,其中参数是共享用户的uid
。
2案例共享到一个特定的组,其中您将拥有共享用户的uid
和组的uid
。
我在我的一个应用程序中使用了类似的概念。下面是我用来生成这些链接的代码:
import 'package:firebase_dynamic_links/firebase_dynamic_links.dart';
import 'package:flutter/material.dart';
import 'package:sendifo/models/group.dart';
import 'localization.dart';
class DynamicLinksService {
static Future<Uri> getGroupDynamicLink(
BuildContext context, Group group) async {
final DynamicLinkParameters parameters = DynamicLinkParameters(
uriPrefix: 'https://sendifo.page.link',
link: Uri.parse(
'https://sendifo.page.link/add_group/?groupID=${group.uid}'),
dynamicLinkParametersOptions: DynamicLinkParametersOptions(
shortDynamicLinkPathLength: ShortDynamicLinkPathLength.unguessable),
androidParameters: AndroidParameters(
packageName: 'com.sendifo',
minimumVersion: 0,
),
iosParameters: IosParameters(
bundleId: 'com.sendifo',
minimumVersion: '0',
appStoreId: '1559453273',
),
socialMetaTagParameters: SocialMetaTagParameters(
title: AppLocalization.of(context).getMessage('join_info_group'),
description: group.title,
imageUrl: Uri.parse(group.image)),
);
final link = await parameters.buildUrl();
final ShortDynamicLink shortenedLink =
await DynamicLinkParameters.shortenUrl(
link,
DynamicLinkParametersOptions(
shortDynamicLinkPathLength: ShortDynamicLinkPathLength.unguessable),
);
final Uri dynamicUrl = shortenedLink.shortUrl;
return dynamicUrl;
}
}
https://stackoverflow.com/questions/67745012
复制相似问题