我想在用户的墙上发布照片。我在onCompleted()
函数中给出了一条错误消息。当我运行我的应用程序时,logCat显示照片上传完成..但是我的墙上没有显示上传的照片。是错误..请指导我......这是我的代码 -
protected Void doInBackground(Void... params)
{
// start Facebook Login
Session.openActiveSession(ImageActivity.this, true, new Session.StatusCallback() {
// callback when session changes state
@Override
public void call(Session session, SessionState state, Exception exception)
{
if (session.isOpened())
{
Request request=Request.newUploadPhotoRequest(session,bitmap, new Request.Callback()
{
@Override
public void onCompleted(Response response)
{
if (response.getError() != null)
{ // [IF Failed Posting]
Log.d("error", "photo upload problem. Error="+response.getError() );
}
else
{
Log.d("error", "photo upload complete.");
}
}
});
request.executeAsync();
}
}
});
return null;
}
答案 0 :(得分:0)
根据Facebook API文档,“picture”参数必须是图片的URL,而不是字节数组。我想这是因为facebook对话框使用WebView显示Feed帖子,因此必须在网络上提供图片。
您可以尝试使用本地资源URI,但这可能无法完全发挥作用,因为Facebook API需要足够智能才能从本地URI中提取数据并将其放在自己的服务器上。不过,我很想知道它是否有效!