Reputation: 102
I have had a few round trips with the facebook review team. Some where minor errors, some where crashes. All fixed. When I submit now to the review team, I'm getting the message "Even after logging in, the sharing option gives the error: "Make sure you are signed in." Please look into this, thanks!" Uhhh, Ok?
I know this error is legit because I created it. It's a simple Android Toast message that displays when the logged in facebook user has not "granted" my app the "publish_actions" permission.
This is where things get interesting. So my app fails review because the Facebook tester cannot test the sharing functionality... Uhh duh! I need to pass the review to gain access to that permission (publish_actions)! So now I'm stuck. They will kick it back to me for not being able to test something, that I need to pass their test for! Lol. :)
If anyone has any suggestions for my next submit please feel free? I'm sitting on the fence about programming a Specialized Toast message for the Facebook Review team that quotes directly from the Facebook Review Guidelines about the requirement for the "publish_actions" permission. I'm so close to being done with this app, but I cannot pass the Facebook Submission for the life of me! :) I would just skip this Facebook review stuff, but it's in my project scope so it's required. Thanks in advance for any suggestions / comments.
Upvotes: 0
Views: 1070
Reputation: 521
https://i.sstatic.net/8SaFB.png
You should create test users when developing your application.
Then, when you submit your Android app for review, indicate the test user that you used (there's a field for that) so that the Facebook reviewer can replicate the way you use your application.
Upvotes: 0
Reputation: 495
I don't know how did you implement code for this action. But in my app (always accepted by FB tester), I will ask user for the publish_actions
when needed:
private void askForPublishActionsForScores() {
new AlertDialog.Builder(getActivity())
.setPositiveButton(R.string.dialog_yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
// User hit OK. Request Facebook publish permission.
requestPublishPermissions();
}
})
.setNegativeButton(R.string.dialog_no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User hit cancel.
// Do somthing!
}
})
.setTitle(R.string.publish_scores_dialog_title)
.setMessage(R.string.publish_scores_dialog_message)
.show();
}
void requestPublishPermissions() {
Log.d(TAG, "Requesting publish permissions.");
final Session session = Session.getActiveSession();
if (session != null) {
Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(this, Arrays.asList("publish_actions"))
.setDefaultAudience(SessionDefaultAudience.FRIENDS)
.setRequestCode(AUTH_PUBLISH_ACTIONS_SCORES_ACTIVITY_CODE);
session.requestNewPublishPermissions(newPermissionsRequest);
}
}
Then, when you need users must granted the publish_actions
permission, you have to check:
// check to see that the user granted the publish_actions permission.
if (!permissions.contains("publish_actions")) {
// the user didn't grant this permission, so we need to prompt them.
askForPublishActionsForScores();
return;
} else {
// the user is granted this permission
// do something...
}
Upvotes: 1