在Facebook上通过Intent分享文本而不使用Facebook sdk

Hem*_*nth 30 android facebook android-intent

由于Facebook不允许通过Intent共享文本,除非我们使用Facebook sdk,我正在寻找实现这一目标的方法.

我可以想到我可以使用的3个黑客:

1)由于Facebook允许图像共享,我可以生成一个Bitmap共享文本,并使用它共享图像Intent.

2)Facebook允许共享URL,在分享时它也会显示Head页面.我可以在我的服务器上托管一个专用页面,并将值作为参数传递给url,并生成Head使用它.(我没有使用php的经验,但我想这是可能的)

3)将文本复制到剪贴板并通知用户.

要么

使用所有3的组合.

任何人都可以建议我更好的方式在Facebook上分享我的内容,而不使用Facebook sdk?

提前致谢.

Rag*_*han 48

你无法使用android在Facebook上分享Text shareIntent.

只有通过Facebook SDK才能使用共享链接功能.

如果有图像,Facebook只会忽略意图中的额外文本.您可以共享图像,但不允许您共享文本内容.

不幸的是,Facebook共享意图只能使用带有前缀http://的单个URL,而不会添加其他文本消息.实际上facebook删除了文本内容,只允许URL/Link.它是由设计,我们无法控制它.

这会奏效

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(Intent.EXTRA_TEXT, "http://www.google.com");
startActivity(Intent.createChooser(sharingIntent, "Share via"));
Run Code Online (Sandbox Code Playgroud)

这不行.

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(Intent.EXTRA_TEXT, "Share Text from App");
startActivity(Intent.createChooser(sharingIntent, "Share via"));
Run Code Online (Sandbox Code Playgroud)

只有您可以在Facebook上分享文本的方法是使用Facebook SDK.

参考链接

Android共享文本和链接的Android共享意图

无法通过Android Share Intent与链接共享文本

Android和Facebook分享意图

  • 只是为了分享一个文本,我不会在我的应用程序中实现 fb sdk。而且,这是一个管理决策。 (2认同)

Kar*_*mar 5

首先,为了在FB上分享文本,你必须使用FB SDK。

如果没有 FB SDK,更好的选择是访问带有“OG”数据的专用网站,该网站将自动解决。这样,您就可以在需要更改时更改 OG 数据。

我建议你选择你的黑客号码2。但是,通过这种方法,FB允许用户点击链接并重定向到网站,你可以尝试根据你的要求来处理这个问题。

我希望你能澄清这一点。

有关 OG 的详细信息,请查看此Open Graph 详细信息


小智 -1

如果您不介意显示其他共享选项,您可以仅使用带有选择器的常规共享意图,因为 Facebook 将成为共享选项之一(如果启用了该选项)。

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
shareIntent.setType("text/plain");
startActivity(Intent.createChooser(shareIntent, "Choose sharing method"));
Run Code Online (Sandbox Code Playgroud)

  • “这是我要发送的文本。”从选择器中选择后,不会出现在 Facebook 应用程序中。 (2认同)