2017-04-22 36 views
0

通常我会使用Firebase动态链接让用户通过短信或电子邮件从我的应用程序共享内容。因此,我生成如下链接以供他们这样做。如何将用户生成的内容分享到Facebook?

https://appcode.app.goo.gl/?link=http://www.example.com/?post_id=112&apn=com.example.com

后通常用户点击这个链接会导致我的应用程序的SinglePostActivity.java并显示Post编号 = 112.My内容有文字,图像以及。

但是,当我有同一链接整合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当他们点击链接呢,我不目前有我的应用程序的网站版本。

+0

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

回答

0

是的,我的机器人也是只有。你基本上只是添加一个自定义(协议)方案到你的清单,处理该网页的链接被点击的时间。类似于,myapp://app.mycompany.com/123。 Facebook本地应用程序将转发到您的应用程序,我相信。

Here's more info about app links

我有这个问题的是,数据不能(容易)是动态的。它必须事先存在 - 或者 - 您必须动态构建指向数据的头标记?我不确定头标是否可以动态......这就是我目前正在努力的方向。