Question

Nous utilisons

Permission[] permissions = new Permission[] {
        Permission.PUBLIC_PROFILE,
        Permission.EMAIL,
        Permission.USER_FRIENDS,
        Permission.PUBLISH_ACTION
    };
SimpleFacebookConfiguration configuration = new SimpleFacebookConfiguration.Builder()
        .setAppId(getResources().getString(R.string.app_id))
        .setNamespace("ournamespace")
        .setPermissions(permissions)
        .build();

        SimpleFacebook.setConfiguration(configuration);   

Dans l'activité de connexion :

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    mSimpleFacebook.onActivityResult(this, requestCode, resultCode, data); 
    super.onActivityResult(requestCode, resultCode, data);
}

@Override
public void onResume() {
    super.onResume();
    mSimpleFacebook = SimpleFacebook.getInstance(this);     
}
@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);

    ctx = this;

    ImageView fbBtn = (ImageView) findViewById(R.id.authButton);
    fbBtn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            mSimpleFacebook.login(onLoginListener);
        }
    });
}   

Cependant, le jeton d'accès généré n'inclut pas l'autorisation publier_actions...qu'est-ce qui ne va pas ici ?

Merci!

Était-ce utile?

La solution

Dans l'une des modifications récentes de cette bibliothèque, ajout d'une nouvelle option pour SimpleFacebookConfiguration.On l'appelle setAskForAllPermissionsAtOnce.Si la valeur est vraie, alors elle demande toutes les autorisations à la fois et vous aurez les autorisations PUBLIER dans le accessToken si l'utilisateur l'accepte lors de la connexion.

Si c'est faux, alors il se comporte différemment.Ce n'est que lorsque l'utilisateur effectue sa première action PUBLIER que la boîte de dialogue avec les autorisations s'affichera pour la première fois.La valeur par défaut est false puisque cela est conforme mieux à la politique de Facebook.Mais vous pouvez le changer.Vérifiez toutes les options ici : https://github.com/sromku/android-simple-facebook#configuration-options

Vous pouvez aussi utiliser SimpleFacebook.requestNewPermissions() méthode pour demander à nouveau des autorisations ou une nouvelle au milieu du flux de votre application, lorsque vous décidez qu'il est bon de demander à l'utilisateur.

Autres conseils

Votre application doit être examinée par des personnes sur Facebook si vous en avez besoin publish_actions autorisation.

L'examen n'est pas requis si vous avez seulement besoin public profile, Email, App friends autorisation.

Et je suppose que générer AccessToken basé sur publish_actions autorisation, votre application doit être examinée.

Voir le lien développeur Facebook,

https://developers.facebook.com/docs/facebook-login/permissions/v2.0

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top