如何从 android 应用程序将纯文本共享到 facebook messenger
Posted
技术标签:
【中文标题】如何从 android 应用程序将纯文本共享到 facebook messenger【英文标题】:How to share plain text to facebook messenger from an android app 【发布时间】:2015-07-26 10:34:05 【问题描述】:我正在尝试使用 facebook sdk 4.x 从我的应用程序中将纯文本共享给 messenger 应用程序,但我无法为此配置 contentUri,但是当我发送图像时它可以工作。
如何处理纯文本?
Uri contentUri = Uri.parse("android.resource://in.darpankulkarni.l33ttxtformessenger/mipmap/ic_launcher");
// contentUri points to the content being shared to Messenger
ShareToMessengerParams shareToMessengerParams =
ShareToMessengerParams.newBuilder(contentUri, "image/png").setExternalUri(Uri.parse("https://montanaflynn-l33t-sp34k.p.mashape.com/encode?text=Hello+How+the+hell+are+you!&mashape-key=AD8dVisiLdmshFoLegK2hzNoDQI4p1BDlshjsn50fOqenOnPY7"))
.build();
// Sharing from an Activity
MessengerUtils.shareToMessenger(
this,
REQUEST_CODE_SHARE_TO_MESSENGER,
shareToMessengerParams);
如何使用上述代码发送纯文本?
【问题讨论】:
这是设计使然。我们现在只允许图像和视频 MIME 类型。 github.com/facebook/facebook-android-sdk/blob/… 只分享图片和视频是什么意思?...没有什么比分享文字更简单... 【参考方案1】:支持的 MessengerUtils 方法不允许共享文本。以下对我有用:
ShareLinkContent.Builder shareLinkContentBuilder = new ShareLinkContent.Builder()
.setContentTitle(contentTitle)
.setContentDescription(contentDescription)
.setContentUrl(Uri.parse(url));
shareLinkContentBuilder.setImageUrl(Uri.parse(imageUrl));
MessageDialog messageDialog = new MessageDialog(activity);
messageDialog.registerCallback(callbackManager, callback);
messageDialog.show(shareLinkContentBuilder.build());
分享链接内容来自:https://developers.facebook.com/docs/sharing/android
【讨论】:
这很好用。太糟糕了 Facebook 决定弃用setImageUrl()
以上是关于如何从 android 应用程序将纯文本共享到 facebook messenger的主要内容,如果未能解决你的问题,请参考以下文章
Spring Cloud Config Server 如何将纯文本文件推送到 Config Client Application?