Skip to content Skip to sidebar Skip to footer

How To Add Setcallback To An Imageview Using Fabric

I am trying to login twitter users from my application, for this I am using Fabric, but says that I must implement the following button to use setCallBack twitter_login_button.setC

Solution 1:

You can do this with any image or custom button. For that in your activity declare

private TwitterAuthClient twitterAuthClient;

Find your layout(in my case its a linearlayout)

twitter_login = (LinearLayout) findViewById(R.id.layout_twitter_login);
final TwitterAuthConfig authConfig = newTwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
        TwitterConfig config = newTwitterConfig.Builder(this)
                .logger(newDefaultLogger(Log.DEBUG))
                .twitterAuthConfig(authConfig)
                .debug(true)
                .build();
        Twitter.initialize(config);
        twitterAuthClient = newTwitterAuthClient();

twitter_login.setOnClickListener(newView.OnClickListener() {
            @OverridepublicvoidonClick(View v) {
                twitterAuthClient.authorize(LoginActivity.this, new com.twitter.sdk.android.core.Callback<TwitterSession>() {
                    @Overridepublicvoidsuccess(Result<TwitterSession> result) {
                        // The TwitterSession is also available through:// Twitter.getInstance().core.getSessionManager().getActiveSession();TwitterSession session = result.data;
                        twitterAuthClient.requestEmail(session, new com.twitter.sdk.android.core.Callback<String>() {
                            @Overridepublicvoidsuccess(Result<String> result) {
                                Log.e(TAG, "Twitterkit email id get success = " + result.data);
                            }

                            @Overridepublicvoidfailure(TwitterException exception) {
                                Log.e(TAG, "Twitter kit twitter email get failed");
                                exception.printStackTrace();
                            }
                        });


                    }

                    @Overridepublicvoidfailure(TwitterException exception) {
                        Log.e(TAG, "Twitter kit twitter login failed");
                        exception.printStackTrace();
                    }
                });
            }
        });

Then paste add this on your onActivityResult()

@OverrideprotectedvoidonActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    twitterAuthClient.onActivityResult(requestCode, resultCode, data);

}

Thats it. Now your twitter login should work

UPDATED:

From TwitterKit3 onward you can easily setup Twitter login using twitter sdk instead of fabric

So for login and authentication add this to your gradle

compile'com.twitter.sdk.android:twitter-core:3.0.0'

And I replaced in my original answer

Fabric.with(this, new Twitter(authConfig));

with

TwitterConfigconfig=newTwitterConfig.Builder(this)
                .logger(newDefaultLogger(Log.DEBUG))
                .twitterAuthConfig(authConfig)
                .debug(true)
                .build();
        Twitter.initialize(config);

And the rest are same

Post a Comment for "How To Add Setcallback To An Imageview Using Fabric"