FBSignIn is a library which makes signin easier.
Features:
- FB SignIn
- Fetch User Details(FbID, Name, Email, UserImage)
- Fetch Friends
Getting started:
- First of all, you need to register you application with facebook developer (https://developers.facebook.com/quickstarts/?platform=android)
- Add fblibrary into your project as module.
- Add below line under dependencies{..} tag of app.gradle of your project
compile project(path: ':fblibrary') - Add below code into manifest file (You will get fb id from facebook developer site)
Under Metadata Tag
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id" /> - Call initializeFB method from onCreate method
private void initializeFB() { mFBSignInAI = new FBSignInAI(); mFBSignInAI.setActivity(MainActivity.this); mFBSignInAI.setCallback(this); }
after this you can call login or getFriends method using mFBSignInAI.
- Implement FBSignCallback in your activity or fragment.
- Add below code into onActivityResultMethod
if(64206 == requestCode)
mFBSignInAI.setActivityResult(requestCode, resultCode, data);
How to parse result data
String name = jsonObject.getString("name");
if (jsonObject.has("email")) {
String email = jsonObject.getString("email");
}
String social_id = jsonObject.getString("id");
if (jsonObject.has("picture")) {
String userProfilePicUrl = "https://graph.facebook.com/" + jsonObject.getString("id") + "/picture?width=2000";
}
How to Get HashKey
try {
PackageInfo info = getPackageManager().getPackageInfo(
getPackageName(), PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
Releases
- Version 1.1 - 14 Nov 2017
Remove deprecated function FacebookSdk.sdkInitialize(getApplicationContext()); - Version 1.2 - 12 March 2018
Resolve context issue