package com.metis.base.activity;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.text.format.Formatter;
import android.view.View;
import android.widget.Toast;
import com.metis.base.R;
import com.metis.base.manager.DisplayManager;
import com.metis.base.utils.FileUtils;
import com.metis.base.widget.KeyValueLayout;
import com.umeng.analytics.MobclickAgent;
import com.umeng.update.UmengUpdateAgent;
import java.io.File;
public class SettingActivity extends TitleBarActivity implements View.OnClickListener {
private static final String TAG = SettingActivity.class.getSimpleName();
private KeyValueLayout mCacheKvl, mCheck4UpdateKvl, mAboutKvl;
private File mCacheDir = null;
private long mCacheSize = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setting);
mCacheKvl = (KeyValueLayout)findViewById(R.id.setting_clear_cache);
mCheck4UpdateKvl = (KeyValueLayout)findViewById(R.id.setting_check_for_update);
mAboutKvl = (KeyValueLayout)findViewById(R.id.setting_about_us);
mCacheKvl.setOnClickListener(this);
mCheck4UpdateKvl.setOnClickListener(this);
mAboutKvl.setOnClickListener(this);
try {
PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), 0);
mCheck4UpdateKvl.setValue(getString(R.string.text_about_current_version, info.versionName));
//Toast.makeText(this, getString(R.string.about_current_version) + ":" + info.versionName, Toast.LENGTH_SHORT).show();
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
mCacheDir = DisplayManager.getInstance(this).getImageLoader().getDiskCache().getDirectory();
if (mCacheDir != null) {
mCacheSize = FileUtils.getDirectorySpace(mCacheDir);
if (mCacheSize > 0) {
mCacheKvl.setValue(Formatter.formatFileSize(this, mCacheSize));
}
}
}
@Override
public boolean showAsUpEnable() {
return true;
}
@Override
public CharSequence getTitleCenter() {
return getString(R.string.title_activity_setting);
}
@Override
public void onClick(View v) {
final int id = v.getId();
if (id == mAboutKvl.getId()) {
startActivity(new Intent(this, AboutActivity.class));
} else if (id == mCacheKvl.getId()) {
if (mCacheDir != null && mCacheSize > 0) {
final int count = FileUtils.clearFile(mCacheDir);
mCacheSize = FileUtils.getDirectorySpace(mCacheDir);
if (mCacheSize == 0) {
mCacheKvl.setValue("");
} else {
mCacheKvl.setValue(Formatter.formatFileSize(this, mCacheSize));
}
Toast.makeText(this, getString(R.string.text_clear_cache_delete_file_count, count), Toast.LENGTH_SHORT).show();
}
} else if (id == mCheck4UpdateKvl.getId()) {
UmengUpdateAgent.forceUpdate(this);
Toast.makeText(this, R.string.text_checking_for_update, Toast.LENGTH_SHORT).show();
}
}
}