Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Firebase动态链接工作但不显示图像_Android_Firebase_Mobile_Firebase Dynamic Links - Fatal编程技术网

Android Firebase动态链接工作但不显示图像

Android Firebase动态链接工作但不显示图像,android,firebase,mobile,firebase-dynamic-links,Android,Firebase,Mobile,Firebase Dynamic Links,如前所述,我在我的Android应用程序中使用Firebase动态链接,并且运行良好。问题是,当我分享它时,例如在WhatsApp中,链接不显示图像,而显示标题和描述。使用的链接类型是短链接(使用大链接,它可以完美地工作) 这是我的代码: FirebaseDynamicLinks.getInstance().createDynamicLink() .setLongLink(buildDynamicLink()) .buildShortDyn

如前所述,我在我的Android应用程序中使用Firebase动态链接,并且运行良好。问题是,当我分享它时,例如在WhatsApp中,链接不显示图像,而显示标题和描述。使用的链接类型是短链接(使用大链接,它可以完美地工作)

这是我的代码:

    FirebaseDynamicLinks.getInstance().createDynamicLink()
            .setLongLink(buildDynamicLink())
            .buildShortDynamicLink(ShortDynamicLink.Suffix.SHORT)
            .addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
                @Override
                public void onComplete(@NonNull Task<ShortDynamicLink> task) {

                    if (task.isSuccessful()) {
                        //Uri previewLink = task.getResult().getPreviewLink();
                        Uri shortLink = task.getResult().getShortLink();
                        shareApp(shortLink.toString());
                    } else {
                        Toast.makeText(MainActivity.this, task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                    }
                }
            });
共同意向

private void shareApp(String uri){
    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_SEND);
    intent.putExtra(Intent.EXTRA_TEXT,uri);
    intent.setType("text/plain");
    startActivity(intent);
}
有人能帮我解决这个问题吗


提前感谢大家。

文档中规定图像必须至少为300X200且小于300KB。请先检查一下。

另一种方法是使用此方法构建长URL:

DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
    .setLink(Uri.parse("https://www.example.com/"))
    .setDomainUriPrefix("https://example.page.link")
    .setAndroidParameters(
            new DynamicLink.AndroidParameters.Builder("com.example.android")
                    .setMinimumVersion(125)
                    .build())
    .setIosParameters(
            new DynamicLink.IosParameters.Builder("com.example.ios")
                    .setAppStoreId("123456789")
                    .setMinimumVersion("1.0.1")
                    .build())
    .setGoogleAnalyticsParameters(
            new DynamicLink.GoogleAnalyticsParameters.Builder()
                    .setSource("orkut")
                    .setMedium("social")
                    .setCampaign("example-promo")
                    .build())
    .setItunesConnectAnalyticsParameters(
            new DynamicLink.ItunesConnectAnalyticsParameters.Builder()
                    .setProviderToken("123456")
                    .setCampaignToken("example-promo")
                    .build())
    .setSocialMetaTagParameters(
            new DynamicLink.SocialMetaTagParameters.Builder()
                    .setTitle("Example of a Dynamic Link")
                    .setDescription("This link works whether the app is installed or not!")
                    .build())
    .buildDynamicLink();  // Or buildShortDynamicLink()
我不太确定,因为我刚刚用flifter完成了,但是添加所需图像的方法是在setSocialMetagParameters()上。我认为你应该这样编码:

new DynamicLink.SocialMetaTagParameters.Builder()
                .setTitle("Shared Title")
                .setDescription("Description that you will see on whatsapp")
                .setImageUrl("yoururl.com/image.png")//Your url HERE
                .build()
如果使用此方法,您将获得一个lorg DynamicClink,要获得一个短链接,您可以使用buildShortDynamicClink()而不是buildDynamicClink()


希望这对你有帮助

谢谢你的回答,大卫。我首先使用您提到的方法构建了DynamicClink,然后将其URI传递给BuildShortDynamicClink方法,这非常有效。如果描述太长,它将不会显示描述
new DynamicLink.SocialMetaTagParameters.Builder()
                .setTitle("Shared Title")
                .setDescription("Description that you will see on whatsapp")
                .setImageUrl("yoururl.com/image.png")//Your url HERE
                .build()