Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>just call this method will return user email id to you.</p> <pre><code>private void doSocialNetworkinWithFacebook() { // check for session Session session=Session.getActiveSession(); if (session != null &amp;&amp; session.isOpened()) { // user is already login show try { Session.OpenRequest request = new Session.OpenRequest(this); request.setPermissions(Arrays.asList("email", "publish_actions")); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } Request.executeMeRequestAsync(session, new Request.GraphUserCallback() { // callback after Graph API response with user object @Override public void onCompleted(GraphUser user, Response response) { if (user != null) { Toast.makeText(activity, "Welcome "+user.getName(), Toast.LENGTH_SHORT).show(); // publishFeedDialog(session); try { strFirstName = user.getFirstName().toString(); strLocation = user.getLocation().getProperty("name").toString(); strEmail = user.asMap().get("email").toString(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); strEmail=""; } runOnUiThread(new Runnable() { public void run() { setUserInfoFromFacebook(strFirstName, strLocation, strEmail); } }); } } }); } else { // user is not log in //show login screen // start Facebook Login try { Session.OpenRequest request = new Session.OpenRequest(this); request.setPermissions(Arrays.asList("email", "publish_actions")); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } Session.openActiveSession(activity, true, new Session.StatusCallback() { // callback when session changes state @Override public void call(final Session session, SessionState state, Exception exception) { //session.openForRead(new Session.OpenRequest(this).setPermissions(Arrays.asList("email"))); Log.d(TAG, "Session :"+session.toString()); Log.d(TAG, "Session is opened :"+session.isOpened()); if (session.isOpened()) { // make request to the /me API Request.executeMeRequestAsync(session, new Request.GraphUserCallback() { // callback after Graph API response with user object @Override public void onCompleted(GraphUser user, Response response) { if (user != null) { Toast.makeText(activity, "Welcome "+user.getName(), Toast.LENGTH_SHORT).show(); // publishFeedDialog(session); try { strFirstName = user.getFirstName().toString(); strLocation = user.getLocation().getProperty("name").toString(); strEmail = user.asMap().get("email").toString(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); strEmail=""; } runOnUiThread(new Runnable() { public void run() { setUserInfoFromFacebook(strFirstName, strLocation, strEmail); } }); } } }); } else if(session.isClosed()) { Toast.makeText(activity, "Unable to connect facebook, please try later..",Toast.LENGTH_SHORT).show(); } } }); } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload