无法从短动态链接检索数据-Firebase

无法从短动态链接检索数据-Firebase,firebase,firebase-dynamic-links,firebase-invites,Firebase,Firebase Dynamic Links,Firebase Invites,当我创建包含UTM参数的动态链接并共享它时,我能够从链接中检索数据和编码查询。但是,当我尝试使用firebase推荐的方法创建动态链接的短链接时,我只能检索路径,而不能检索编码查询。我如何解决它 创建动态链接的方法: public void buildReferral() { DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.p

当我创建包含UTM参数的动态链接并共享它时,我能够从链接中检索数据和编码查询。但是,当我尝试使用firebase推荐的方法创建动态链接的短链接时,我只能检索路径,而不能检索编码查询。我如何解决它

创建动态链接的方法:

public void buildReferral() {
    DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
            .setLink(Uri.parse("sample link"))
            .setDynamicLinkDomain("sample domain")
            .setAndroidParameters(
                    new DynamicLink.AndroidParameters.Builder("com.package.my")
                            .build())
            .setGoogleAnalyticsParameters(
                    new DynamicLink.GoogleAnalyticsParameters.Builder()
                            .setSource("referral")
                            .setContent("content")
                            .setMedium("Android")
                            .build())
            .buildDynamicLink();
    buildShortUrl(dynamicLink);
}
创建短链接的方法:

 public void buildShortUrl(DynamicLink dynamicLink) {
    Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
            .setLongLink(Uri.parse(dynamicLink.getUri().toString()))
            .buildShortDynamicLink()
            .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() {
                @Override
                public void onComplete(@NonNull Task<ShortDynamicLink> task) {
                    if (task.isSuccessful()) {
                        // Short link created
                        Uri shortLink = task.getResult().getShortLink();
                        Uri flowchartLink = task.getResult().getPreviewLink();
                    } else {
                        // Error
                        // ...
                    }
                }
            });
}
public void buildShortUrl(DynamicLink DynamicLink){
Task shortLinkTask=FirebaseDynamicLinks.getInstance().createdynamicclink()
.setLongLink(Uri.parse(dynamicLink.getUri().toString()))
.buildShortDynamicClink()
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
//短链接已创建
Uri shortLink=task.getResult().getShortLink();
Uri flowchartLink=task.getResult().getPreviewLink();
}否则{
//错误
// ...
}
}
});
}

您可以使用
appendQueryParameter()
向链接添加多个参数,并且通过使用
getQueryParameter()
可以从链接检索参数。您可以看到答案,您可以如何实现它。

您如何共享缩短的链接?将其传递给
AppInviteInvitation.IntentBuilder().setDeepLink()
?Intent Intent=new-AppInviteInvitation.IntentBuilder(“共享通过”).setMessage(getString(R.string.reference_text)).setDeepLink(shortLinkUri).setCallToActionText(“安装”).build();startActivityForResult(意向,100);这就是短链接的共享方式@BobSnyderMy的经验是AppInvite缩短了传递给
setDeepLink()
的链接。我认为在传递到
setDeepLink()
之前缩短它没有任何价值。我能够发送带有参数的长链接,查看收到的短链接,并从收到的动态链接数据的URI中提取参数。我无法使用firebase邀请通过WhatsApp邀请用户。因此,我想缩短链接,并通过WhatsApp共享。有没有办法使用firebase共享到WhatsApp的链接?我不知道WhatsApp。我想你可以缩短你正在做的链接,并将其嵌入到短信中。在我的应用程序中,如果用户希望使用Firebase邀请发送动态链接,我会发送长链接。或者用户可以使用短信或电子邮件共享链接。对于这些情况,我会像您一样缩短链接。谢谢您的回答,但我希望在此处传递参数,而不是使用appendQuery()-.setGoogleAnalyticsParameters(new DynamicLink.GoogleAnalyticsParameters.Builder().setSource(“参考”)传递的参数.setContent(“内容”).setMedium(“安卓”).build()