티스토리 뷰
액티비티로 페이스북 로그인 구현하기
java :
public class FacebookLoginActivity extends Activity {
private final String TAG = "FacebookLoginLog";
private CallbackManager mCallbackManager;
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mCallbackManager = CallbackManager.Factory.create();
facebookAuth();
}
@Override
public void onStart() {
super.onStart();
}
@Override
public void onActivityResult(int reqCode, int resCode, Intent data) {
super.onActivityResult(reqCode, resCode, data);
mCallbackManager.onActivityResult(reqCode, resCode, data);
}
private void facebookAuth()
{
LoginManager.getInstance().logInWithReadPermissions(this,
Arrays.asList("public_profile", "email")); //user_photos
LoginManager.getInstance().registerCallback(mCallbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(final LoginResult result) {
getUserProfile(result);
}
@Override
public void onError(FacebookException error) {
Log.d(TAG, "Error: " + error);
}
@Override
public void onCancel() {
Log.d(TAG, "onCancel");
}
});
}
private void getUserProfile(LoginResult loginResult) {
GraphRequest request = GraphRequest.newMeRequest(
loginResult.getAccessToken(),
(object, response) -> {
try {
String name = object.getString("name");
String email = object.getString("email");
String photoURL = object.getJSONObject("picture").getJSONObject("data").getString("url");
Log.d(TAG, response.toString());
}catch (JSONException e) {
e.printStackTrace();
}
}
);
Bundle parameters = new Bundle();
parameters.putString("fields", "id, name, email, picture.type(normal)");
request.setParameters(parameters);
request.executeAsync();
}
}
출처
https://developers.facebook.com/docs/facebook-login/android/?locale=ko_KR
https://developers.facebook.com/docs/android/graph?locale=ko_KR
'Development Note > Android' 카테고리의 다른 글
[java] setCancelable 와 setCanceledOnTouchOutside 차이 (0) | 2021.05.27 |
---|---|
[mac] gpg 사용법 (0) | 2021.05.11 |
[java]acra 사용법 (0) | 2021.05.11 |
[maven 배포] jcenter 에서 maven 으로 마이그레이션 (0) | 2021.05.11 |
[java/kotlin] 안드로이드 라이브러리 프로젝트 만들기 (0) | 2021.01.04 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- nsurl 에서 nsstring 변환
- countryName
- Error Domain=SKErrorDomain Code=0
- abs
- 절대값함수
- tempfile
- dialog
- convert nsurl to nsstring
- DeviceModel
- tempdir
- abs 함수
- countryCode
- permissionCheck
- ioutil
- java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line
- LanguageCode
- NSUserDefaults 예제
- iTunes Store에 연결할 수 없음
- Locale.getDefault().getLanguage()
- setCancelable vs setCanceledOnTouchOutside
- nsurl to nsstring convert
- 퍼미션체크
- Golang
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함