Java 使用facebook sdk android共享图片时无需显示任何内容

Java 使用facebook sdk android共享图片时无需显示任何内容,java,android,facebook,Java,Android,Facebook,下面我将学习如何使用android和facebook SDK共享一个简单的图像 我已经在facebook开发者页面中配置了该应用,其中包括应用ID、开发密钥散列和发布密钥散列 问题是,当我登录时,屏幕上会显示: 然后当我点击OK时,什么都没发生 以下是我的主要活动: public class MainActivity extends ActionBarActivity { private CallbackManager callbackManager; private LoginManager

下面我将学习如何使用android和facebook SDK共享一个简单的图像

我已经在facebook开发者页面中配置了该应用,其中包括应用ID、开发密钥散列和发布密钥散列

问题是,当我登录时,屏幕上会显示: 然后当我点击OK时,什么都没发生

以下是我的主要活动:

public class MainActivity extends ActionBarActivity {

private CallbackManager callbackManager;
private LoginManager loginManager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // Get the release key hash in Debug.Log
    generateHash();

    // Initialize the facebook SDK
    FacebookSdk.sdkInitialize(getApplicationContext());

    callbackManager = CallbackManager.Factory.create();

    // If we want to publish something on facebook we need publish permission
    List<String> permissionNeeds = Arrays.asList("publish_actions");

    loginManager = LoginManager.getInstance();

    loginManager.logInWithPublishPermissions(this, permissionNeeds);

    loginManager.registerCallback(callbackManager, new FacebookCallback<LoginResult>()
    {
        @Override
        public void onSuccess(LoginResult loginResult)
        {
            sharePhotoToFacebook();
        }

        @Override
        public void onCancel()
        {
            System.out.println("onCancel");
        }

        @Override
        public void onError(FacebookException exception)
        {
            System.out.println("onError");
        }
    });
}

private void sharePhotoToFacebook(){
    Bitmap image = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
    SharePhoto photo = new SharePhoto.Builder()
            .setBitmap(image)
            .setCaption("Give me my codez or I will ... you know, do that thing you don't like!")
            .build();

    SharePhotoContent content = new SharePhotoContent.Builder()
            .addPhoto(photo)
            .build();

    ShareApi.share(content, null);
}
这是我的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
关于我做错了什么有什么建议吗


提前感谢。

您是否已将Facebook内容提供商添加到您的清单中

<provider android:authorities="com.facebook.app.FacebookContentProvider{APP_ID}"
          android:name="com.facebook.FacebookContentProvider"
          android:exported="true"/>
记住这些事情: 1.照片的大小必须小于12MB
2.登录时需要获得发布操作权限

是的,我添加了,它与您的完全相同。我在帖子中添加了我的AndroidManifest.xml
<provider android:authorities="com.facebook.app.FacebookContentProvider{APP_ID}"
          android:name="com.facebook.FacebookContentProvider"
          android:exported="true"/>