使用来自 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 上上传图片的主要内容,如果未能解决你的问题,请参考以下文章
DJI Mobile SDK,Android Studio Emulator SDK注册失败