package com.nexchanges.hailyo; import android.app.Application; import android.content.Context; import android.text.TextUtils; import com.crashlytics.android.Crashlytics; import com.digits.sdk.android.Digits; import com.nexchanges.hailyo.utils.LruBitmapCache; import com.parse.Parse; import com.twitter.sdk.android.Twitter; import com.twitter.sdk.android.core.TwitterAuthConfig; import io.fabric.sdk.android.Fabric; import com.android.volley.Request; import com.android.volley.RequestQueue; import com.android.volley.toolbox.ImageLoader; import com.android.volley.toolbox.Volley; /** * Created by Abhishek on 28/04/15. */ public class MyApplication extends Application { public static final String TAG = MyApplication.class.getSimpleName(); private RequestQueue mRequestQueue; static Context context; private ImageLoader mImageLoader; private static MyApplication mInstance; // Note: Your consumer key and secret should be obfuscated in your source code before shipping. private static final String TWITTER_KEY = "lwYQJ7C00XfZvyFrVSyN2Dy3Y"; private static final String TWITTER_SECRET = "yGGbIty4LI1FE9CZc247vTVna4Vgr97yqI4vu3m29Wy0kTiWnn"; @Override public void onCreate() { super.onCreate(); TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); Fabric.with(this, new Twitter(authConfig), new Crashlytics(), new Digits()); mInstance=this; } public static synchronized MyApplication getInstance() { return mInstance; } public RequestQueue getRequestQueue() { if (mRequestQueue == null) { mRequestQueue = Volley.newRequestQueue(getApplicationContext()); } return mRequestQueue; } public ImageLoader getImageLoader() { getRequestQueue(); if (mImageLoader == null) { mImageLoader = new ImageLoader(this.mRequestQueue, new LruBitmapCache()); } return this.mImageLoader; } public <T> void addToRequestQueue(Request<T> req, String tag) { // set the default tag if tag is empty req.setTag(TextUtils.isEmpty(tag) ? TAG : tag); getRequestQueue().add(req); } public <T> void addToRequestQueue(Request<T> req) { req.setTag(TAG); getRequestQueue().add(req); } public void cancelPendingRequests(Object tag) { if (mRequestQueue != null) { mRequestQueue.cancelAll(tag); } } public static Context getAppContext() { return MyApplication.context; } }