Android 如何将用户生成的内容共享到Facebook?

Android 如何将用户生成的内容共享到Facebook?,android,facebook,facebook-share,Android,Facebook,Facebook Share,通常我使用Firebase动态链接让用户通过短信或电子邮件共享我的应用程序中的内容。因此,我为他们生成了一个如下的链接 通常在用户单击此链接后,我的应用程序将显示SinglePostActivity.java,并显示Post,IdId=112。我的内容也有文本和图像 但当我将Facebook共享按钮与同一链接集成时,它不会像往常一样重定向到我的应用程序,但它只是一个断开的链接,Facebook也阻止了该链接 下面是我如何与Facebook共享集成的 facebookShare = (Butto

通常我使用Firebase动态链接让用户通过短信或电子邮件共享我的应用程序中的内容。因此,我为他们生成了一个如下的链接

通常在用户单击此链接后,我的应用程序将显示
SinglePostActivity.java
,并显示
Post
,IdId=112。我的内容也有文本和图像

但当我将Facebook共享按钮与同一链接集成时,它不会像往常一样重定向到我的应用程序,但它只是一个断开的链接,Facebook也阻止了该链接

下面是我如何与Facebook共享集成的

facebookShare = (Button)findViewById(R.id.facebookShare); 

facebookShare.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (ShareDialog.canShow(ShareLinkContent.class)) {
                    ShareLinkContent content = new ShareLinkContent.Builder()
                            .setContentUrl(Uri.parse(generateDeepLink(postId)))//this will generate the link above
                            .build();

                    shareDialog.show(content);
                }
            }
        });

所以我的问题是,当用户点击链接时,如何让用户共享内容,并引导用户访问我的
SinglePostActivity.java
?而且我的应用程序目前没有网站版本。

是的,我的也是安卓版。基本上,您只是将一个自定义(协议)方案添加到清单中,以在单击该网页的链接时进行处理。类似于,
myapp://app.mycompany.com/123
。我相信Facebook原生应用会转发到你的应用


我的问题是,数据不能(很容易)是动态的。它必须预先存在——或者——您必须动态构建指向数据的head标记?我不确定头标签是否可以是动态的。。。。这就是我目前正在努力解决的问题。

建议您首先对URL参数应用正确的URL编码。