android - 使用 facebook sdk 4.2.0 分享照片

标签 android facebook share

ShareDialog shareDialog = new ShareDialog(this);

shareDialog.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>() {
            @Override
            public void onSuccess(Sharer.Result result) {
                Toast.makeText(SharePage.this, "ok", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onCancel() {
            }

            @Override
            public void onError(FacebookException error) {
                Toast.makeText(SharePage.this, error.getMessage(), Toast.LENGTH_LONG).show();
            }
        });

SharePhoto photo = new SharePhoto.Builder().setBitmap(bm).setCaption(description).build();
SharePhotoContent content = new SharePhotoContent.Builder().addPhoto(photo).build();
shareDialog.show(content);

运行以下代码。 如果我的手机中有 facebook 应用程序,则可以成功分享照片。 但如果我删除 Facebook 应用程序,callbackManager 将返回错误“无法通过网络或 Facebook 应用程序的已安装版本显示提供的内容。某些对话框仅支持从 API 14 开始。

最佳答案

仅当您的设备中安装了 native Facebook 应用程序时,您才能显示此对话框。在安装了 Facebook 应用程序的设备中尝试相同的代码,它会起作用。 如果您想制作自定义对话框,您需要

 -Build a custom interface that posts to the Graph API endpoint /me/feed
 -Implement Facebook Login in your app
 -Request the publish_actions permission when people log into your app

以下是从您自己的界面发布 Facebook 链接的代码:

  ShareApi.share(content, null);

如果您需要任何帮助,请告诉我。 如果有帮助,请将此答案标记为已接受。

关于android - 使用 facebook sdk 4.2.0 分享照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30843786/

相关文章:

facebook - Insights -> Users -> User Trends 上显示的内容

android - 如何在 android 中使用 facebook SDK 在 facebook 中上传图像

javascript - 除了 URL 之外,如何获取此 "Share"按钮以获取当前 URL HTML 标题?

javascript - 如何删除 Facebook 分享按钮上的分享数量

java - 模式中限定词的使用

java - 使用 Android Studio 虚拟设备执行任务 ':react-native-gesture-handler:compileDebugJavaWithJavac' 失败

android - 如何通过 ADB 关闭 Wifi?

ios - 如何使用适用于 iphone 的 facebook ios sdk 实现单点登录 (SSO)

react-native - 通过 Whatsapp 和 Facebook React Native 分享图片

java - 将选择与自动完成 TextView 中适配器中的项目相关联