You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android中如何获取Firebase动态链接共享的id参数值?

问题描述

我在应用中使用Firebase Dynamic Link实现深度链接功能。分享帖子时使用的链接为:https://xyz.page.link/navigator?id=6502ae981c4900015116c4fa,该链接可正常跳转至应用,但使用以下代码尝试获取id值时,得到的是Firebase控制台中设置的错误值:

val uri = intent.data

private fun getDynamicLinkFromFireBase() {
        Firebase.dynamicLinks
            .getDynamicLink(intent)
            .addOnSuccessListener(this) { pendingDynamicLinkData: PendingDynamicLinkData? ->
                // Get deep link from result (may be null if no link is found)
                var deepLink: Uri? = null
                if (pendingDynamicLinkData != null) {
                    deepLink = pendingDynamicLinkData.link
                    Log.d("DynamicLink", "DynamicLink$deepLink")
                    val postId = deepLink?.getQueryParameter("postId")
                    Log.d("PostIDD", "Post$postId")
                    val intent = Intent(this, DeepLinkingPostActivity::class.java)
                    intent.putExtra(DEEP_LINKING_POST_ID, postId)
                    startActivity(intent)
                }
               
            }
            .addOnFailureListener(this) { e ->   navigateWelcomeScreen() }
    }

我希望获取分享链接中的id参数值,以便根据该id展示对应的数据,恳请帮忙解决。

解决方案
  1. 修正参数键名
    你的分享链接里的参数是id,但代码中错误使用postId作为键名来获取参数,直接修改代码:
val postId = deepLink?.getQueryParameter("id")
  1. 验证Firebase Dynamic Link配置
  • 登录Firebase控制台,检查Dynamic Link的规则设置,确保原始链接的id参数未被修改,能完整传递到应用内的deepLink中。
  • 先打印完整的deepLink内容,确认参数是否存在:
Log.d("DynamicLink", "完整深层链接: $deepLink")
  1. 备选方案:直接从Intent获取参数
    如果Firebase SDK返回的深层链接异常,可直接从Intent的原始Uri提取参数:
// 在Activity的onCreate方法中调用
intent.data?.let { uri ->
    val postId = uri.getQueryParameter("id")
    if (!postId.isNullOrEmpty()) {
        val intent = Intent(this, DeepLinkingPostActivity::class.java)
        intent.putExtra(DEEP_LINKING_POST_ID, postId)
        startActivity(intent)
    } else {
        navigateWelcomeScreen()
    }
}

内容的提问来源于stack exchange,提问作者MARSH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 10:43:30