22

有没有办法使用 android 或者 facebook sdk 在 facebook messenger 中共享文本?

我想做类似whatsapp的方式,选择你的文本并打开一个意图来选择你想要发送给的人......有没有办法用facebook messenger做到这一点?它出现在intent.choose 对话框中..但我只想发送给facebook messenger..

4

4 回答 4

39

使用此代码 onClick,,

com.facebook.orca 是 fb messenger 的包名。

    Intent sendIntent = new Intent();
    sendIntent.setAction(Intent.ACTION_SEND);
    sendIntent
            .putExtra(Intent.EXTRA_TEXT,
                    "<---YOUR TEXT HERE--->.");
    sendIntent.setType("text/plain");
    sendIntent.setPackage("com.facebook.orca");
    try {
        startActivity(sendIntent);
    }
    catch (android.content.ActivityNotFoundException ex) {
        Toast.makeText(context,"Please Install Facebook Messenger", Toast.LENGTH_LONG).show();
    }
于 2014-09-29T14:07:58.550 回答
19

与特定用户启动 Facebook Messenger

Uri uri = Uri.parse("fb-messenger://user/"); uri = ContentUris.withAppendedId(uri,[provide user id]); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent);

它将启动您提到的用户 ID 的信使

于 2015-04-15T13:13:03.670 回答
3

或者,您可以使用他们的 messenger sdk ( https://developers.facebook.com/docs/messenger/android ),这将弹出一个屏幕,您可以在其中选择一个或多个用户来发送消息。唯一要注意的是您不能预填充文本,但可以附加富媒体。

于 2015-11-11T22:55:08.163 回答
0

只有链接/视频/图片

https://developers.facebook.com/docs/sharing/android/

这是坏消息:https ://developers.facebook.com/docs/messenger-platform/changelog/?locale=en_US#20190610

2019 年 6 月 10 日

Messenger平台公告

无法与新应用一起使用

Share to Messenger SDK将不再支持允许人们将应用程序中的链接和媒体共享到 Messenger。企业和开发人员可能需要对其应用程序进行修改以触发本机操作系统共享。人们将能够使用设备内置的本机共享功能将内容共享到 Messenger。

但在我对 Android 的测试中,我仍然可以使用最新的 Facebook SDK 将链接/图片/视频分享到 Messenger

import com.facebook.share.model.ShareLinkContent;
import com.facebook.share.widget.MessageDialog;


ShareLinkContent content = new ShareLinkContent.Builder()
                        .setContentUrl(Uri.parse("https://xxx.xxx/xxx"))
                        .build();
//no callback
MessageDialog.show(context, content);
于 2020-05-03T03:05:05.120 回答