Android how to get full username after authenticating with Twitter

I have a twitter login created after following the following steps http://docs.fabric.io/android/twitter/authentication.html and the username is displayed excluding the username.

This is my code below

loginButton.setCallback(new Callback<TwitterSession>() {
            @Override
            public void success(Result<TwitterSession> result) {
                // Do something with result, which provides a TwitterSession for making API calls
                TwitterSession session = Twitter.getSessionManager().getActiveSession();
                TwitterAuthToken authToken = session.getAuthToken();
                String token = authToken.token;
                String secret = authToken.secret;

                long userID = result.data.getUserId();

                //This throws an Error Cannot find symbol showUser()
                User user = twitter.showUser(userID);

                //This throws error as well
                String fullname= user.getName();


                Log.d("login:", "twitter:success");
                Log.d("username", result.data.getUserName());
                Log.d("full name", fullname);

            }

            @Override
            public void failure(TwitterException exception) {
                // Do something on failure
            }
        });

      

How can I get the full username?

+3


source to share


2 answers


Use TwitterApiClient and User like this:



Twitter
    .getApiClient(session)
    .getAccountService()
    .verifyCredentials(true, false, new Callback<User>() {

        @Override
        public void failure(TwitterException e) {
        }

        @Override
        public void success(Result<User> userResult) {
            User user = userResult.data;
            .... access User fields ....
        }

    });

      

+3


source


You can use this function to get the username:



public void processToken(String callbackUrl) {
        mProgressDlg.setMessage("Finalizing ...");
        mProgressDlg.show();
        final String verifier = getVerifier(callbackUrl);
        new Thread() {
            @Override
            public void run() {
                int what = 1;

                try {
                    mHttpOauthprovider.retrieveAccessToken(mHttpOauthConsumer,
                            verifier);

                    mAccessToken = new AccessToken(
                            mHttpOauthConsumer.getToken(),
                            mHttpOauthConsumer.getTokenSecret());

                    configureToken();

                    User user = mTwitter.verifyCredentials();

                    Log.i("user.getName()="+user.getName(), "786");
                    try{
                        firstName=user.getName().split(" ")[0];
                        lastName=user.getName().split(" ")[1];
                    }catch(Exception e){
                        e.printStackTrace();
                        firstName = user.getName();
                        lastName = "";
                    }
                    Log.i("firstName="+firstName+" lastName="+lastName, "786");
                    UserId=user.getId();

                    what = 0;
                } catch (Exception e) {
                    e.printStackTrace();
                }

                mHandler.sendMessage(mHandler.obtainMessage(what, 2, 0));
            }
        }.start();
    }

      

0


source







All Articles