Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- main
- =========
- CallbackManager callbackManager;
- ProgressDialog mdialog;
- TextView txtEmail, txtName;
- RelativeLayout login;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- setPointer();
- }
- private void setPointer() {
- login = findViewById(R.id.login);
- login.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Intent intent = new Intent(main.this,MainActivity.class);
- startActivity(intent);
- }
- });
- // For Facebook Login
- callbackManager = CallbackManager.Factory.create();
- txtEmail = findViewById(R.id.txtEmail);
- txtName = findViewById(R.id.txtName);
- @SuppressLint("WrongViewCast") LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
- loginButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- }
- });
- loginButton.setReadPermissions(Arrays.asList("email","public_profile"));
- loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
- @Override
- public void onSuccess(LoginResult loginResult) {
- mdialog = new ProgressDialog(main.this);
- mdialog.setMessage("Retrieving data...");
- mdialog.show();
- String accesstoken = loginResult.getAccessToken().getToken();
- GraphRequest request = GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback() {
- @Override
- public void onCompleted(JSONObject object, GraphResponse response) {
- mdialog.dismiss();
- Log.d("response",response.toString());
- getData(object);
- }
- });
- Bundle parameters = new Bundle();
- parameters.putString("fields","id,email,birthday,friends,name");
- request.setParameters(parameters);
- request.executeAsync();
- }
- @Override
- public void onCancel() {
- }
- @Override
- public void onError(FacebookException error) {
- }
- });
- // if already login
- if (AccessToken.getCurrentAccessToken() != null){
- // Just set user Id
- txtEmail.setText(AccessToken.getCurrentAccessToken().getUserId());
- }
- }
- @Override
- // Facebook Methods
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- callbackManager.onActivityResult(requestCode, resultCode, data);
- }
- public void getData(JSONObject object) {
- try {
- // URL profile_picture = new URL("https://graph.facebook.com/" + object.getString("id") + "/picture?width=250&height=250");
- // Picasso.with(this).load(profile_picture.toString()).into(imgAvatar);
- txtEmail.setText(object.getString("email"));
- // txtBirthday.setText(object.getString("birthday"));
- // txtFriends.setText("Friends: " + object.getJSONObject("friends").getJSONObject("summary").getString("total_count"));
- txtName.setText(object.getString("name"));
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- // End of Facebook Method
- }
- ========================================================================================================
- Manifest
- ==============
- <meta-data
- android:name="com.facebook.sdk.ApplicationId"
- android:value="@string/facebook_app_id" />
- ==========================================================================================================
- app.gruild(Module:app)
- ========================
- implementation 'com.facebook.android:facebook-android-sdk:4.28.0'
- ===========================================================================================================
- string.xml
- =============
- <!-- Facebook Codes to make facebook login -->
- <string name="facebook_app_id">1541145485955161</string>
- <string name="fb_login_protocol_scheme">fb1541145485955161</string>
- ============================================================================================================
- activity_main.xml
- =================
- <android.support.design.widget.TabLayout
- android:id="@+id/tabs"
- android:layout_width="match_parent"
- android:layout_height="42dp"
- android:background="#D1C4E9"
- app:tabSelectedTextColor="#6200EA"
- app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"
- app:tabTextColor="#6200EA"
- app:tabGravity="fill"
- ==================================================================================================
Advertisement
Add Comment
Please, Sign In to add comment