0
votes

I am using a FaceBook sharedialog to share a post and image taken form a URL network resource (FB method is

setPicture(URL string)).

However I want the user to be able to upload a image from the SD card. So I passed a file of image path to the

Request.newUploadPhotoRequest(session, imageSelected, uploadPhotoRequestCallback);

method.

I then get the URL in the callback and pass this to the setPicture(URL) of the FacebookDialog.ShareDialogBuilder object.

Problem is user must first approve the photo in the FB album to share in their time line and then have the URL become available to post via setPicture().

the message I get in Facebook:

Would you like to add these photos to your album? The photos below were uploaded from another application, you'll need to approve them.

So I am wondering is this a permissions issue, and if so how do I go about getting the permission required?

I am unfamiliar with Facebook SDK and SSO, but when using the share dialog if user has FB app permissions are asked at first login and not required thereafter.

Cant understand how I can use share dialog to post a network resource but not upload a photo.

The session code I use is:

//open a session accord to FB share dialog instructions

//start a session 
Session.openActiveSession(this, true, new Session.StatusCallback() { 



@Override 
public void call(final Session session, SessionState state, Exception exception) { 
//callback when session changes state 
//request a photo upload
//use share dialog to post the URL of image
1

1 Answers

0
votes

After hours of searching through google and FB developers site it was a mtter of adding this code: //request addtional permissions to upload photos Session.NewPermissionsRequest

newPermissionsRequest = new Session
                                      .NewPermissionsRequest(LogDive.this, Arrays.asList("publish_actions", "publish_stream"));
                                    session.requestNewPublishPermissions(newPermissionsRequest);

FB developers site very confusing with regards to outlining basic permissions using share dialog.