2

好吧,伙计们,我不知道我做错了什么,我对这个问题失去了理智。我刚开始使用 Facebook Android SDK,我不知道我做错了什么。

我正在开发一个需要在 Facebook 上分享图片的应用程序。首先我尝试分享状态。它工作得很好。

然后我尝试根据文档上的信息分享照片。没有发生任何事情。

这是我的清单。

<activity android:name="com.facebook.FacebookActivity"
              android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
              android:label="@string/app_name"
              android:theme="@android:style/Theme.Translucent.NoTitleBar"/>

    <provider android:name="com.facebook.FacebookContentProvider"
              android:authorities="com.facebook.app.FacebookContentProvider1501607393******"
              android:exported="true"/>

    <meta-data android:name="com.facebook.sdk.ApplicationId"
               android:value="@string/facebook_app_id"/>

App id 是正确的。我在我的 AndroidManifest.xml 中设置了一个 ContentProvider。

这是我的Java。

    Bitmap image2 = BitmapFactory.decodeResource(getResources(), R.drawable.android);
    SharePhoto photo = new SharePhoto.Builder().setBitmap(image2).build();
    SharePhotoContent content = new SharePhotoContent.Builder().addPhoto(photo).build();
    ShareDialog dialog = new ShareDialog(MainActivity.this);
    dialog.show(content);

请帮忙。

4

3 回答 3

2

经过深思熟虑,我终于解决了这个问题。要使图像共享正常工作,应牢记两件事。

1.在您的 AndroidManifest.xml 中设置 ContentProvider。

  <provider android:name="com.facebook.FacebookContentProvider"
          android:authorities="com.facebook.app.FacebookContentProvider1501607393******"
          android:exported="true"/>

其中 1501607393****** 是您的应用代码。

2.在测试您的应用程序之前,在设备中安装官方Facebook应用程序。

于 2015-12-07T11:42:36.137 回答
1

试试这个代码可能对你有用。

    public boolean sharePhoto(Bitmap image, String description) {
        if (ShareDialog.canShow(SharePhotoContent.class)) {
            SharePhoto photo = new SharePhoto.Builder().setBitmap(image)
                .build();
            SharePhotoContent content = new SharePhotoContent.Builder()
                .addPhoto(photo).build();
            shareDialog.show(content);
            return true;
        }
        return false;
    }
于 2015-12-03T09:31:34.277 回答
0

亲爱的 Birat Bade Shrestha,对于照片、新闻提要等,您必须特别提交给 facebook。默认邮箱,public_profile 是允许app 使用的。但是对于任何其他用途,您必须进行提交,如果提交由FB 批准,您可以访问。

https://developers.facebook.com/docs/facebook-login/review/how-to-submit

于 2015-12-03T09:33:04.593 回答