使用Android上的sdk 3.19.0在Facebook上传图片

时间:2014-10-17 10:38:27

标签: android facebook image-uploading facebook-android-sdk facebook-sdk-4.0

我正在使用此代码从URL共享链接和图片

private UiLifecycleHelper uiHelper
    String fbPhotoAddress = null;       

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
uiHelper = new UiLifecycleHelper(this, null);
        uiHelper.onCreate(savedInstanceState);


    }

void btn_clicked(View view)
{
FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this)
            .setApplicationName("fiver").
            setLink("https://play.google.com/store/")
            .setPicture("http://www.sweetkidsapps.com/wp-content/uploads/2013/02/cool-coloring-great-kids-app.jpg")
            .build();

            uiHelper.trackPendingDialogCall(shareDialog.present());

}

它工作正常 但问题是我想在Facebook上传图片并将其网址发送到setPicture,我该怎么做?

ps我在Google上查看的内容大多已过时。

1 个答案:

答案 0 :(得分:0)

我不确定你是否以正确的方式思考它。

Facebook Share Dialog允许您使用其他内容(如链接,说明,标题和名称)发布URL中的图片。

包含所有这些数据的帖子将在没有任何附加许可的情况下发布。

如果您想从本地上传和发布图片,则需要执行以下操作:

   Request request = Request.newUploadPhotoRequest(
            session,
            ((BitmapDrawable) getResources().getDrawable(
                    R.drawable.picture)).getBitmap(), callback);
    RequestAsyncTask task = new RequestAsyncTask(request);
    task.execute();

这种方式的问题是你需要添加" publish_actions"您的Facebook应用程序中的权限,以及登录到Facebook以获得活跃的"会话"。

此处有更多信息 - > https://developers.facebook.com/docs/facebook-login/permissions/v2.1

在这里 - > https://developers.facebook.com/docs/android/share/

我可以建议您在某个地方上传图片,例如Dropbox公共文件夹,并从那里获取网址吗?这无疑更容易