package com.quinn.githubknife; import android.app.Application; import android.content.Context; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.assist.QueueProcessingType; import com.quinn.githubknife.model.APKVersion; import com.quinn.githubknife.utils.ChannelUtils; import com.quinn.httpknife.github.User; import com.tendcloud.tenddata.TCAgent; /** * Created by Quinn on 7/20/15. */ public class GithubApplication extends Application { private final static String TD_APP_ID = "C7208C73204D6DDF67AA2227D9C06174"; public static Context instance; /** * @// TODO: 9/6/16 * 暂时默认100,后续打多渠道此处得动态获取 */ private String channel = "100"; private User user; private String token = ""; @Override public void onCreate() { super.onCreate(); instance = this; /** * 初始化Talking-data */ new Thread(new Runnable() { @Override public void run() { TCAgent.LOG_ON = false; channel = ChannelUtils.getChannel(GithubApplication.this); TCAgent.init(GithubApplication.this, TD_APP_ID, channel); TCAgent.setReportUncaughtExceptions(true); } }).start(); // Initialize ImageLoader with configuration. ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder( getApplicationContext()) .threadPriority(Thread.NORM_PRIORITY - 2) .denyCacheImageMultipleSizesInMemory() .diskCacheFileNameGenerator(new Md5FileNameGenerator()) .diskCacheSize(50 * 1024 * 1024) // 50 Mb .tasksProcessingOrder(QueueProcessingType.LIFO) .writeDebugLogs() // Remove for release app .build(); ImageLoader.getInstance().init(config); } public APKVersion getAPKVersion(){ APKVersion version = new APKVersion(); try { PackageInfo info = getPackageManager().getPackageInfo( getPackageName(), 0); version.setVersionCode(info.versionCode); version.setVersionName(info.versionName); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } return version; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } public String getToken() { return token; } public void setToken(String token) { this.token = token; } }