Android Open Source - androidcodes Twitter Backend






From Project

Back to project page androidcodes.

License

The source code is released under:

GNU General Public License

If you think the Android project androidcodes listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.app.twitterclient.model;
/*from   w  w  w  . j a  v  a  2  s  . c o m*/
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.auth.AccessToken;
import twitter4j.auth.RequestToken;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.AsyncTask;
import android.util.Log;

import com.app.twitterclient.R;
import com.app.twitterclient.utils.ConsumerKeyConstants;
import com.app.twitterclient.utils.LogUtils;

public class TwitterBackend {

  private static Twitter twitter;
  private static final String CALLBACK_URL = "http://oauth.gmodules.com/gadgets/oauthcallback";
  private AccessToken token;
  private RequestToken requestToken;
  private SharedPreferences mAccountConfigured;

  public TwitterBackend(String consumerKey, String consumerSecret,
      Context context) {
    twitter = new TwitterFactory().getInstance();
    twitter.setOAuthConsumer(consumerKey, consumerSecret);
    mAccountConfigured = context.getSharedPreferences(
        context.getString(R.string.account_config_pref),
        Context.MODE_PRIVATE);
  }

  public String getAuthorizationURL() {
    try {
      return new AuthURLGetter().execute().get();
    } catch (Exception e) {
      Log.e("twitter", e.getMessage());
    }
    return null;
  }

  public AccessToken getAccessToken() {
    return token;
  }

  public void setAccessToken(String accessToken, String tokenSecret) {
    token = new AccessToken(accessToken, tokenSecret);
  }

  public void setAccessToken(String verifier) {
    try {
      token = new AccessTokenGetter().execute(verifier).get();
    } catch (Exception e) {
      Log.e("Twitter", e.getMessage());
    }
  }

  public void twitterInit(AccessToken accessToken) {
    setAccessToken(accessToken.getToken(), accessToken.getTokenSecret());
    twitterInit();
  }

  public void twitterInit() {
    twitter.setOAuthAccessToken(token);
  }

  public static Twitter getTwitterInstance() {
    return twitter;
  }

  private class AuthURLGetter extends AsyncTask<String, Integer, String> {

    @Override
    protected String doInBackground(String... arg0) {
      try {
        requestToken = twitter.getOAuthRequestToken(CALLBACK_URL);
        return requestToken.getAuthorizationURL();
      } catch (TwitterException e) {
        Log.e("Twitter", e.getMessage());
        return null;
      }
    }
  }

  private class AccessTokenGetter extends
      AsyncTask<String, Integer, AccessToken> {

    @Override
    protected AccessToken doInBackground(String... arg0) {
      try {
        return twitter.getOAuthAccessToken(requestToken, arg0[0]);
      } catch (TwitterException e) {
        Log.e("Twitter", e.getMessage());
        return null;
      }
    }
  }

  public boolean tokenExists() {
    return mAccountConfigured
        .contains(ConsumerKeyConstants.PREF_KEY_OAUTH_TOKEN)
        && mAccountConfigured
            .contains(ConsumerKeyConstants.PREF_KEY_OAUTH_SECRET);
  }

  public void saveToken() {
    token = getAccessToken();
    LogUtils.LOGD("Twitter Backend", "value of token " + token);
    if (token != null) {
      Editor editor = mAccountConfigured.edit();
      editor.putString(ConsumerKeyConstants.PREF_KEY_OAUTH_TOKEN,
          token.getToken());
      editor.putString(ConsumerKeyConstants.PREF_KEY_OAUTH_SECRET,
          token.getTokenSecret());
      editor.commit();
    }
  }

  public AccessToken getToken() {
    String accessToken = mAccountConfigured.getString(
        ConsumerKeyConstants.PREF_KEY_OAUTH_TOKEN, null);
    String secret = mAccountConfigured.getString(
        ConsumerKeyConstants.PREF_KEY_OAUTH_TOKEN, null);
    if (accessToken != null && secret != null) {
      token = new AccessToken(accessToken, secret);
    }
    return token;
  }

}




Java Source Code List

com.app.citypediav2.Constants.java
com.app.citypediav2.CustomButton.java
com.app.citypediav2.CustomEditText.java
com.app.citypediav2.CustomText.java
com.app.citypediav2.DetailsActivity.java
com.app.citypediav2.ItemListActivity.java
com.app.citypediav2.ItemListAdapter.java
com.app.citypediav2.ListAdapterOptions.java
com.app.citypediav2.MainActivity.java
com.app.citypediav2.MainApplication.java
com.app.citypediav2.Options.java
com.app.citypediav2.receivers.BootCompletedBroadcastReceiver.java
com.app.citypediav2.receivers.ConnectionChangeReceiver.java
com.app.citypediav2.services.DataLoggingService.java
com.app.citypediav2.utils.AppUtils.java
com.app.citypediav2.utils.ArticleTextExtractor.java
com.app.citypediav2.utils.Constants.java
com.app.citypediav2.utils.LogUtils.java
com.app.citypediav2.utils.PrefUtils.java
com.app.twitterclient.model.TwitterBackend.java
com.app.twitterclient.utils.AppUtils.java
com.app.twitterclient.utils.ConnectionDetector.java
com.app.twitterclient.utils.ConsumerKeyConstants.java
com.app.twitterclient.utils.LogUtils.java
com.app.twitterclient.view.BootActivity.java
com.app.twitterclient.view.HomeActivity.java
com.app.twitterclient.view.NewAccountActivity.java
com.app.twitterclient.view.TwitterAuthActivity.java
com.binarysearch.BinarySearch.java
com.citypedia.app.enities.Atms.java
com.citypedia.app.enities.Cabs.java
com.citypedia.app.enities.Gyms.java
com.citypedia.app.enities.PetrolPumps.java
com.citypedia.app.enities.PlacesToVisit.java
com.citypedia.app.enities.Restaurants.java
com.citypedia.app.providers.CityDB.java
com.citypedia.app.providers.CityPediaProvider.java
com.citypedia.app.providers.ContentDescriptor.java
com.info.magazine.MainActivity.java
com.java.thread.ConditionExample.java
com.java.thread.DeadLock.java
com.java.thread.Main.java
com.java.thread.ProdConsumerProb.java
com.java.thread.SampleThread.java
com.java.thread.package-info.java
com.lists.LinkedListImpl.java
com.pract.threadpool.CustomQueue.java
com.pract.threadpool.MyQueue.java
com.pract.threadpool.TestThreadPoolManager.java
com.pract.threadpool.ThreadPoolManager.java
com.pract.threadpool.Worker.java
com.queues.QueuesImpl.java
com.rjil.logcollector.DeviceBroadcastReceiver.java
com.rjil.logcollector.LogCollectorService.java
com.rjil.logcollector.LogDumper.java
com.sorting.InsertionSort.java
com.sorting.package-info.java
com.stacks.BracketChecker.java
com.stacks.StackImpl.java
com.stacks.StockSpan.java