使用来自 android 的 sdk 3.19.0 在 Facebook 上上传图片

Posted

技术标签:

【中文标题】使用来自 android 的 sdk 3.19.0 在 Facebook 上上传图片【英文标题】:Upload Image on Facebook using sdk 3.19.0 from android 【发布时间】:2014-10-17 10:38:26 【问题描述】:

我正在使用此代码从 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 上上传图片并获取其 URL 以在 setPicture 中发送,我该怎么做?

ps 我在 Google 上查到的东西大多已经过时了。

【问题讨论】:

【参考方案1】:

我不确定你的想法是否正确。

Facebook 分享对话框允许您从 URL 发布图片以及链接、描述、标题和名称等其他内容。

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

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

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

这种方式的问题是您需要在您的 facebook 应用程序中添加“publish_actions”权限,并登录到 facebook 以获得有效的“会话”。

更多信息在这里 --> https://developers.facebook.com/docs/facebook-login/permissions/v2.1

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

我可以建议将您的图片上传到某个地方,例如保管箱公共文件夹,然后从那里获取网址吗?这非常容易

【讨论】:

谢谢!让我先试试这个 我收到此错误 'Response: responseCode: 400, graphObject: null, error: HttpStatus: 400, errorCode: 2500, errorType: OAuthException, errorMessage: 必须使用活动访问令牌进行查询当前用户的信息。, isFromCache:false'

以上是关于使用来自 android 的 sdk 3.19.0 在 Facebook 上上传图片的主要内容,如果未能解决你的问题,请参考以下文章

防止来自Facebook Android SDK的网络请求

通过 Facebook 登录

DJI Mobile SDK,Android Studio Emulator SDK注册失败

Android视频编辑SDK--RDVECore来自锐动的无UI,高度抽象化API

Android Studio 显示来自较新 API 的方法

如何为spotify sdk android创建队列