1

私は開いているセッションを持っています.友達の壁の投稿を公開しようとすると、これを行う権限がないと表示されます.Androidですでにセッションを開いているストリーム公開権限を設定するにはどうすればよいですか.

4

2 に答える 2

5

すでに開いているセッションがある場合は、そのセッションに「publish_stream」または「publish_action」権限があるかどうかを確認する必要があります。ない場合は、requestNewPublishPermissionsを呼び出します。何かのようなもの

Session session = Session.getActiveSession();

List<String> permissions = session.getPermissions();
if (!permissions.contains("publish_actions")) {
     Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(this, Arrays.asList("publish_actions"))
            .setDefaultAudience(SessionDefaultAudience.FRIENDS);
     session.requestNewPublishPermissions(newPermissionsRequest);
}
于 2013-03-19T15:47:49.420 に答える
0

次のように公開の許可を設定できます。

private static final String[] PERMISSIONS = new String[] { "publish_stream" };

そして、以下のようにfacebookのauthorizeメソッドでこの許可を確認してください:

public void loginAndPostToWall() throws CustomException
  {
    try
    {
        m_facebook.authorize(FacebookShareActivity.this, PERMISSIONS,
                Facebook.FORCE_DIALOG_AUTH, new LoginDialogListener());
    }
    catch (Throwable p_e)
    {
        throw new CustomException(TAG + "Error in  loginAndPostToWall()", p_e);
    }
}
于 2013-03-19T10:44:19.187 に答える