I am posting on my wall in facebook sdk android but I am getting I'll post my code below
{Response: responseCode: 403, graphObject: null, error: {HttpStatus: 403, errorCode: 200, errorType: OAuthException, errorMessage: (#200) The user hasn't authorized the application to perform this action}, isFromCache:false} private void postStatusUpdate(final String fbpost) { Log.d("postStatusUpdate",fbpost);
Session.openActiveSession(this, true, new Session.StatusCallback() {
// callback when session changes state
@SuppressWarnings("deprecation")
@Override
public void call(final Session session, SessionState state, Exception exception) {
if(session.isClosed()){
Log.i("postStatusUpdate session.isClosed", "message not posted session is closed");
}
if (session.isOpened()) {
Log.i("session.isOpened", "session.isOpened");
if (!session.isOpened()) {
Log.w("myConsultant11111111111","Session closed");
Session.OpenRequest openRequest = null;
openRequest = new Session.OpenRequest(TabActivity.this);
if (openRequest != null) {
openRequest.setDefaultAudience(SessionDefaultAudience.FRIENDS);
openRequest.setPermissions(Arrays.asList("publish_stream","publish_actions"));
openRequest.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
session.openForPublish(openRequest);
}
}
Log.i("session.getPermissions() tab", ""+session.getPermissions());
//fbpostcheck = "if";
// make request to the /me API
Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
//session.requestNewReadPermissions(newPermissionsRequest2);
if (user != null) {
try {
Session session = Session.getActiveSession();
//session.requestNewReadPermissions(newPermissionsRequest);
if (!session.isOpened() && !session.isClosed()) {
// session.openForRead(new Session.OpenRequest(this).setCallback(statusCallback));
} else {
// Session.openActiveSession(this, true, statusCallback);
Log.d("myLogs", "Test 1");
final String message = fbpost;
Request request = Request
.newStatusUpdateRequest(Session.getActiveSession(), message, new Request.Callback() {
@Override
public void onCompleted(Response response) {
//showPublishResult(message, response.getGraphObject(), response.getError());
Log.i("onCompleted", response.toString());
Log.i("getGraphObject", ""+response.getGraphObject());
showPublishResult(message, response.getGraphObject(), response.getError());
}
private void showPublishResult(String message,GraphObject graphObject,FacebookRequestError error) {
// TODO Auto-generated method stub
String title = null;
String alertMessage = null;
if (error == null) {
title = "Success";
alertMessage = "All is good";
//Toast.makeText(getApplicationContext(),"Posted successfully", Toast.LENGTH_SHORT).show();
AppMsg.makeText(TabActivity.this, "Posted to facebook", AppMsg.STYLE_INFO).show();
} else {
title = "Error";
alertMessage = error.getErrorMessage();
Log.i("alertMessage", alertMessage.toString());
AppMsg.makeText(TabActivity.this, "Error in Posting Message on facebook\n"/*+alertMessage*/, AppMsg.STYLE_INFO).show();
//Toast.makeText(getApplicationContext(),alertMessage, Toast.LENGTH_LONG).show();
}
}
});
request.executeAsync();
}
} catch (Exception e) {
// TODO Auto-generated catch block
Log.i("Exception user data", e.toString());
}
}
}
});
}
}
});
}
just open the permission dialogue with the publish_action permission then update your access token and then post your message
facebook Post on your behalf is not working in android facebook sdk 3.0.2
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.