package org.aisen.weibo.sina.ui.fragment.settings;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import com.umeng.analytics.MobclickAgent;
import org.aisen.android.common.context.GlobalContext;
import org.aisen.android.common.utils.SystemUtils;
import org.aisen.android.common.utils.Utils;
import org.aisen.android.common.utils.ViewUtils;
import org.aisen.android.ui.activity.basic.BaseActivity;
import org.aisen.weibo.sina.R;
public class VersionSettingsFragment extends BasePreferenceFragment
implements OnPreferenceClickListener{
private Preference pVersion;// 检查版本
private Preference pGrade;// 给我评分
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public void onResume() {
super.onResume();
refreshVersion();
}
private void refreshVersion() {
if (pVersion == null) {
pVersion = getPreferenceManager().findPreference("pVersion");
pVersion.setOnPreferenceClickListener(this);
}
if (pGrade == null) {
pGrade = getPreferenceManager().findPreference("pGrade");
pGrade.setOnPreferenceClickListener(this);
}
pVersion.setTitle(R.string.settings_version_p);
pVersion.setSummary(String.format(getString(R.string.settings_current_version), SystemUtils.getVersionName(getActivity())));
}
@Override
public boolean onPreferenceClick(Preference preference) {
if ("pVersion".equals(preference.getKey())) {
showVersionDialog(getActivity());
MobclickAgent.onEvent(getActivity(), "show_version");
}
else if ("pGrade".equals(preference.getKey())) {
startMarket();
}
return true;
}
public static void showVersionDialog(final Activity context) {
VersionDialogFragment.launch(context);
}
public static void startMarket() {
Uri uri = Uri.parse(String.format("market://details?id=%s", SystemUtils.getPackage(GlobalContext.getInstance())));
if (Utils.isIntentSafe(BaseActivity.getRunningActivity(), uri)) {
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
GlobalContext.getInstance().startActivity(intent);
}
// 没有安装市场
else {
ViewUtils.showMessage(GlobalContext.getInstance(), R.string.settings_error_market);
}
}
}