Firebase动态链接无法正常工作 - DFL参数
我已经在SO和网上搜索过类似的问题,而其他人似乎遇到了这个问题,他们的解决方案对我而言并不适用。Firebase动态链接无法正常工作 - DFL参数
DFL parameter in Firebase Dynamic Links Builder
与Android开始,我试图实现我的应用程序动态链接。该应用程序需要动态链接上的附加参数,因此我正在根据此处的信息手动构建链接:https://firebase.google.com/docs/dynamic-links/create-manually。
我创建以下列方式(代码简称为这篇文章的目的)
Uri.Builder builder = new Uri.Builder()
.scheme("https")
.authority(AppPrivate.Invitation.APP_CODE + ".app.goo.gl")
.path("/")
.appendQueryParameter("link", link)
.appendQueryParameter("apn", AppPrivate.PACKAGE)
.appendQueryParameter("dfl", desktopLink);
对于我的使用情况下,我的链接link
和desktopLink
参数是相同的 - 他们是我的网站上实际工作的网址。无论用户用动态链接点击什么设备,它都应该执行所需的操作。再次,为了简单得到这个工作,我已经链接到我们的主网站(https://www.mytravelerapp.com)。
当我从我的Android设备发送邀请,我基于代码示例这里的意图:https://github.com/firebase/quickstart-android/blob/master/invites/app/src/main/java/com/google/firebase/quickstart/invites/MainActivity.java
return new AppInviteInvitation.IntentBuilder(context.getString(R.string.content_trip_invitation_title))
.setMessage(message)
.setDeepLink(uri)
.setCustomImage(Uri.parse(AppPrivate.Invitation.TRIP_INVITE_DEEP_LINK_IMAGE))
.setCallToActionText(context.getString(R.string.content_trip_invitation_cta))
.build();
然而,当我通过电子邮件收到邀请我的桌面上,它总是转到Play商店列表,无论我添加到最初的深层链接(DFL,AFL)。这里的链接从“行动呼吁”按钮从电子邮件样本:
https://a3d4u.app.goo.gl/i/225742434763-3bd2c2fa-45f0-4ed8-aca3-37760d27d971
我还没有实现在Android应用中的接收器监听传入的链接,所以我不能确认是否或者深层链接在该平台上行为不当。
我非常感谢任何关于桌面链接丢失的建议或建议。
谢谢!
你实际上是在另一个动态链接中包装动态链接。邀请自己生成一个动态链接,该链接没有DFL参数,因此它将重定向到商店。
您可以尝试缩短您生成的动态链接,并通过常规共享对话框而不是使用邀请进行共享。
啊,所以如果您使用手动方式来生成动态链接,那么您不需要使用AppInviteInvitation intent builder?那么,正如您所提到的,您只需调用用户个人设备上可用的应用程序的常规共享意图?那么它在技术上可以用于社交媒体渠道,电子邮件,短信等?感谢您的澄清 - 在阅读规格时并不完全表达这种联系。这也解释了为什么该活动不会回应我的主机 - 我不得不使用app_code.app.goo.gl主机而不是我的.com。 – Kyle
快速跟进 - 如果我删除了AppInviteInvitation构建器,并只发送通过手动创建动态链接构建的Uri,则会出现Google 400错误。这是它创建的链接(一旦我找到工作,我会缩短它) - https://a3d4u.app.goo.gl/?link=https%253A%252F%252Fwww.mytravelerapp.com&apn=edu.bsu。 android.apps.traveler&dfl = https%3A%2F%2Fwww.mytravelerapp.com&amv = 635 – Kyle
请在链接上追加&d = 1以查看调试页面。这里https://a3d4u.app.goo.gl/?link=https%253A%252F%252Fwww.mytravelerapp.com&apn=edu.bsu.android.apps.traveler&dfl=https%3A%2F%2Fwww.mytravelerapp。com&amv = 635&d = 1您可以看到链接参数(深层链接)有问题。 试试这个,而不是https://a3d4u.app.goo.gl/?link=https%3A//www.mytravelerapp.com&apn=edu.bsu.android.apps.traveler&dfl=https%3A%2F%2Fwww。 mytravelerapp.com&amv = 635 –