我在SO和web上搜索了一个类似的问题,虽然其他人似乎遇到了这个问题,但他们的解决方案并不适合我。
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
参数是一样的——它们是我网站上的实际工作URL。无论用户使用动态链接点击什么设备,它都应该执行所需的操作。再一次,为了简单地让它工作,我链接到了我们的主要网站(
https://www.mytravelerapp.com
).
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();
然而,当我通过桌面上的电子邮件收到邀请时,无论我在初始深度链接(DFL、AFL)中添加了什么,它都会转到Play Store列表。以下是电子邮件中“行动号召”按钮的链接示例:
https://a3d4u.app.goo.gl/i/225742434763-3bd2c2fa-45f0-4ed8-aca3-37760d27d971
我还没有在android应用程序中实现接收器来监听传入链接,因此我无法确认深度链接在该平台上是否正常运行。
谢谢