Pergunta

Estamos usando

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);   

Na sessão de início de actividade:

@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);
        }
    });
}   

No entanto, o access token que é gerado não inclui o publish_actions permissão...o que está errado aqui?

Obrigado!

Foi útil?

Solução

Em uma das recentes alterações a esta biblioteca, adicionada nova opção para SimpleFacebookConfiguration.Ele é chamado de setAskForAllPermissionsAtOnce.Se o valor for true, em seguida, ele pede para todas as permissões de uma vez e você terá a PUBLICAR permissões no accessToken se o usuário aceitar, ele sessão.

Se isso é falso, então ela se comporta de uma maneira diferente.Apenas quando o usuário faz sua primeira PUBLICAR ação, só então, o diálogo com as permissões serão mostrados pela primeira vez.O valor padrão é falso pois este está em conformidade melhor para Facebook de política.Mas você pode alterá-lo.Verifique todas as opções aqui: https://github.com/sromku/android-simple-facebook#configuration-options

Você também pode usar SimpleFacebook.requestNewPermissions() método para pedir permissões de novo ou de novo no meio do seu aplicativo de fluxo, quando você decidir que é bom perguntar de usuário.

Outras dicas

Você app precisam ser revisados pelo FaceBook as pessoas, se você precisa publish_actions permissão.

A revisão não é necessário se você só precisa de public profile, Email, App friends permissão.

E eu acho que para gerar AccessToken com base no publish_actions a permissão, o aplicativo precisa ser revisto.

Veja o facebook developer link,

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

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top