Den*_*ang 21 firebase firebase-dynamic-links
我正在为开源会议撰写应用程序.
最初每位与会者将通过电子邮件或短信等方式收到不同的链接
https://example.com/?token=fccfc8bfa07643a1ca8015cbe74f5f17
然后使用此链接打开应用程序,我们可以通过令牌知道用户是哪个与会者.
Firebase在I/O 2016中发布了一项新功能动态链接,它为用户提供了更好的体验.
我试过了,但我找不到任何方法来传递动态链接中的自定义参数(令牌),如何使用不同参数的相同链接给我的用户?
谢谢.
Seh*_*eed 12
创建动态链接
转到链接详细信息
复制长动态链接并在 URL 的链接参数中添加您的参数,例如 PARAMETER=132323
1)来自https://console.firebase.google.com/(这里不需要自定义参数。)
2)在某个地方创建链接,fe 在你的 confluence 页面上(这里我们添加我们的参数):
https://PROJECTNAME.page.link/?link=https://PROJECTNAME.page.link/LINKNAME?PARAMETER=1&ofl=https://www.PROJECTNAME.com/
Run Code Online (Sandbox Code Playgroud)
PARAMETER是您的自定义参数。
ofl是从其他平台(PC、Mac)单击链接时转到的链接。
3)从android项目Kotlin代码中获取链接数据:
Firebase.dynamicLinks
.getDynamicLink(intent)
.addOnSuccessListener { pendingDynamicLinkData ->
val parameter: String =
pendingDynamicLinkData?.link?.getQueryParameter("PARAMETER").orEmpty()
}
Run Code Online (Sandbox Code Playgroud)
如果您想在 REST 中使用带有自定义参数的动态链接,这里是一个负载示例:
{
"dynamicLinkInfo": {
"dynamicLinkDomain": "example.app.goo.gl",
"link": "http://someurl.com?my_first_param=test&my_second_param=test2"
},
"suffix": {
"option":"UNGUESSABLE"
}
}
Run Code Online (Sandbox Code Playgroud)
确保从 dynamicLinkDomain 中删除“https://”
于连
现在,您可以使用Firebase SDK创建短链接FirebaseDynamicLinks.getInstance().createDynamicLink():https:
//firebase.google.com/docs/dynamic-links/android/create
示例代码:
Task shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLink(Uri.parse("https://example.com/"))
.setDynamicLinkDomain("abc123.app.goo.gl")
// Set parameters
// ...
.buildShortDynamicLink()
.addOnCompleteListener(this, new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task) {
if (task.isSuccessful()) {
// Short link created
Uri shortLink = task.getResult().getShortLink();
Uri flowchartLink = task.getResult().getPreviewLink();
} else {
// Error
}
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16541 次 |
| 最近记录: |