@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(
this
.getApplicationContext());
setContentView(R.layout.login_activity);
callbackManager = CallbackManager.Factory.create();
LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.setReadPermissions(Arrays.asList(
"public_profile"
,
"email"
));
loginButton.registerCallback(callbackManager,
new
FacebookCallback<LoginResult>() {
@Override
public
void
onSuccess(LoginResult loginResult) {
GraphRequest graphRequest = GraphRequest.newMeRequest(loginResult.getAccessToken(),
new
GraphRequest.GraphJSONObjectCallback() {
@Override
public
void
onCompleted(JSONObject object, GraphResponse response) {
Log.v(
"result"
,object.toString());
try
{
String email = object.getString(
"email"
);
String name = object.getString(
"name"
);
String gender = object.getString(
"gender"
);
String userId = object.getString(
"id"
);
ImageView myImage = (ImageView)findViewById(R.id.facebookImage);
URLConnection conn = url.openConnection();
conn.connect();
BufferedInputStream bis =
new
BufferedInputStream(conn.getInputStream());
Bitmap bm = BitmapFactory.decodeStream(bis);
bis.close();
myImage.setImageBitmap(bm);
Log.d(
"TAG"
,
"페이스북 이메일 -> "
+ email);
Log.d(
"TAG"
,
"페이스북 이름 -> "
+ name);
Log.d(
"TAG"
,
"페이스북 성별 -> "
+ gender);
}
catch
(Exception e) {
e.printStackTrace();
}
}
});
Bundle parameters =
new
Bundle();
parameters.putString(
"fields"
,
"id,name,email,gender,birthday"
);
graphRequest.setParameters(parameters);
graphRequest.executeAsync();
}
@Override
public
void
onCancel() {
}
@Override
public
void
onError(FacebookException error) {
Log.e(
"LoginErr"
,error.toString());
}
});
}