title: Getting read and publish permission in Facebook SDK 3.0.1 from android
body: <p>I am trying to get my Read and publish permission in Android app, its working perfectly on first time in web dialog. After successfully authorized the next time its says you have already authorized dialog twice. </p>
  
  <p>Here is the code for creating Session Object.</p>
  
  <pre><code>Session session = Session.getActiveSession();
                  if(session == null){
                      session = new Session.Builder(HomeActivity.this).setApplicationId(MyTouchTunesApplication.getSettings().getFacebookAppId()).build();
                      Session.setActiveSession(session);
                  }else{
                      Util.clearFacebookToken();
                   }
                  if(!session.isOpened() &amp;&amp; !session.isClosed()){
                      ArrayList&lt;String&gt; permissions = new  ArrayList&lt;String&gt;();
                      permissions.add("email");
                      session.openForRead(new Session.OpenRequest(HomeActivity.this).setCallback(statusCallback).setPermissions(permissions));
                  }else{
                      Session.setApplicationId(MyTouchTunesApplication.getSettings().getFacebookAppId());
                      Session.openActiveSession(HomeActivity.this, true, statusCallback);
                  }
  </code></pre>
  
  <p>My Callback method </p>
  
  <pre><code>public void call(Session session, SessionState state, Exception exception) {
          Log.d("session state", state.toString());
          if(exception != null){
              if(!exception.getMessage().contains("user")){
                  showError(exception.getMessage());
                  return;
              }
          }
          if(session.isOpened() &amp;&amp; state == SessionState.OPENED &amp;&amp; !session.getPermissions().contains("publish_stream")){
              final String[] PERMISSION_ARRAY_PUBLISH = {"publish_stream"};
              final List&lt;String&gt; permissionList = Arrays.asList(PERMISSION_ARRAY_PUBLISH);
              session.requestNewPublishPermissions(new NewPermissionsRequest(HomeActivity.this,permissionList ));
              return;
          }
          if(session !=null &amp;&amp; session.isOpened() &amp;&amp; state == SessionState.OPENED_TOKEN_UPDATED){
              mLoginCommand = new LoginCommand(HomeActivity.this, fbloginHandler, null, null, session.getAccessToken(), String.valueOf(session.getExpirationDate().getTime()));
              mLoginCommand.execute();
          }
      }
  </code></pre>
  
  <p>i am not getting the all permission when user is logging after authorized the application, its just return only email permission, that's why my condition is breaking in Statuscallback. i have to get the email and publish one by one, cant do that when user post the status.i doubted about this implementation, expecting some help in this</p>
  
  <p>Thanks.</p>