package org.aisen.weibo.sina.base; import android.content.SharedPreferences; import android.preference.PreferenceManager; import org.aisen.android.common.context.GlobalContext; import org.aisen.android.common.utils.ActivityHelper; import org.aisen.android.common.utils.SystemUtils; import org.aisen.weibo.sina.R; /** * Created by wangdan on 15/4/12. */ public class AppSettings { static final int[] countArr = { 20, 50, 100 }; public static final int REQUEST_DATA_DELAY = 500; public static int getPublishDelay() { return 5 * 1000; } /** * 网络请求延迟 * * @return */ public static boolean isNetworkDelay() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNetworkDelay", false); } /** * 提醒设置 * * @return */ public static boolean isNotifyEnable() { return ActivityHelper.getBooleanShareData(GlobalContext.getInstance(), "org.aisen.weibo.sina.NOTIFICATION", true); } /** * 提及评论提醒 * * @return */ public static boolean isNotifyCommentMention() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pCommentMention", true); } /** * 提及微博提醒 * * @return */ public static boolean isNotifyStatusMention() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pStatusMention", true); } /** * 粉丝提醒 * * @return */ public static boolean isNotifyFollower() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pFollower", true); } /** * 评论提醒 * * @return */ public static boolean isNotifyComment() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pComment", true); } /** * 私信提醒 * * @return */ public static boolean isNotifyDm() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pDm", true); } /** * 声音提醒 * * @return */ public static boolean isNotifySound() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNotifySound", true); } /** * 振动提醒 * * @return */ public static boolean isNotifyVibrate() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNotifyVibrate", true); } /** * LED提醒 * * @return */ public static boolean isNotifyLED() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNotifyLED", true); } /** * 夜间不扰 * * @return */ public static boolean isNotifyNightClose() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNightClose", true); } /** * 发送成功后的震动反馈 * * @return */ public static boolean isSendVibrate() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pSendVibrate", true); } /** * 未读小时间隔时间 * * @return */ public static int getUnreadInterval() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int value = Integer.parseInt(prefs.getString("pInterval", "0")); String[] valueArr = GlobalContext.getInstance().getResources().getStringArray(R.array.prefValues); int interval = 60; switch (Integer.parseInt(valueArr[value])) { case 0: interval = 60; break; case 1: interval = 60 * 5; break; case 2: interval = 60 * 15; break; case 3: interval = 60 * 60; break; } return interval; } /** * 上传图片质量设置 * * @return */ public static int getUploadSetting() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int value = Integer.parseInt(prefs.getString("pUploadSetting", "0")); return value; } /** * 应用常驻内存 * * @return */ public static boolean isAppResident() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pAppResident", true); } /** * 微博加载数量 * * @return */ public static int getTimelineCount() { // if (true) return 5; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int index = Integer.parseInt(prefs.getString("pTimelineCount", "0")); int count = countArr[0]; if (index == 3 && GlobalContext.getInstance() != null) { if (SystemUtils.getNetworkType(GlobalContext.getInstance()) == SystemUtils.NetWorkType.wifi) count = 100; } else { count = countArr[index]; } return count; } /** * 评论加载数量 * * @return */ public static int getCommentCount() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int index = Integer.parseInt(prefs.getString("pCommentCount", "0")); int count = 50; if (index == 3 && GlobalContext.getInstance() != null) { if (SystemUtils.getNetworkType(GlobalContext.getInstance()) == SystemUtils.NetWorkType.wifi) count = 100; } else { count = countArr[index]; } return count; } /** * 图片加载模式 * * @return */ public static int getPictureMode() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int value = Integer.parseInt(prefs.getString("pPicMode", "2")); return value; } /** * 默认加载原图 * * @return */ public static boolean isLoadOrigPic() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pLoadOrigPic", false); } /** * 是否使用内置浏览器 * * @return */ public static boolean isInnerBrower() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pInnerBrowser", true); } /** * 正文字体大小 * * @return */ private static int[] txtSizeResArr = new int[]{ R.dimen.sp_12, R.dimen.sp_13, R.dimen.sp_14, R.dimen.sp_15, R.dimen.sp_16, R.dimen.sp_17, R.dimen.sp_18, R.dimen.sp_19, R.dimen.sp_20 }; public static int getTextSize() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int value = Integer.parseInt(prefs.getString("pTextSize", "4")); return GlobalContext.getInstance().getResources().getDimensionPixelSize(txtSizeResArr[value]); } /** * 无图模式 * * @return */ public static boolean isPicNone() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pNonePic", false); } /** * 是否显示备注 * * @return */ public static boolean isShowRemark() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pShowRemark", true); } /** * 显示高清头像 * * @return */ public static boolean isLargePhoto() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pLargePhoto", true); } /** * 如果是获取历史数据,则历史数据的时间大于这个时间,将缓存刷新 * * @return */ public static int getRefreshInterval() { if (isDebug()) return 30 * 1000; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); int value = Integer.parseInt(prefs.getString("pCacheValidity", "1")); switch (value) { case 0: return 30 * 1000; case 1: return 20 * 60 * 1000; case 2: return 12 * 60 * 60 * 1000; case 3: return 24 * 60 * 60 * 1000; case 4: return Integer.MAX_VALUE; // case 1: // return 1 * 60 * 60 * 1000; // case 2: // return 4 * 60 * 60 * 1000; // case 3: // return 8 * 60 * 60 * 1000; default: return 1 * 60 * 60 * 1000; } } /** * 开发者测试模式 * * @return */ public static boolean isDebug() { // 自动刷新时间间隔为30秒 // 屏幕旋转 // 打开音效 SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pDebug", false); } /** * 关闭缓存 * * @return */ public static boolean isDisableCache() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pDisableCache", false); } /** * 撤销发布 * * @return */ public static boolean isSendDelay() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pSendDelay", false); } /** * 分享照片时旋转90度 * * @return */ public static boolean isRotatePic() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pRotatePic", false); } public static String getImageSavePath() { return ActivityHelper.getShareData(GlobalContext.getInstance(), "org.aisen.weibo.sina.Images", "Images"); } public static void setImageSavePath(String path) { ActivityHelper.putShareData(GlobalContext.getInstance(), "org.aisen.weibo.sina.Images", path); } /** * 手势返回方向设置 * * @return */ public static int getSwipebackEdgeMode() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return Integer.parseInt(prefs.getString("pSwipebackEdgeMode", "0")); } /** * 首页fab按钮功能 * * @return */ public static int getFabBtnType() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return Integer.parseInt(prefs.getString("pFabType", "1")); } /** * 首页fab按钮位置 * * @return */ public static int getFabBtnPosition() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return Integer.parseInt(prefs.getString("pFabPosition", "1")); } public static int getThemeColor() { return ActivityHelper.getIntShareData(GlobalContext.getInstance(), "Theme_index", -1); } public static void setThemeColor(int theme) { ActivityHelper.putIntShareData(GlobalContext.getInstance(), "Theme_index", theme); } /** * 开启高清图已下载提示 * * @return */ public static boolean midPicHint() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pMidPicHint", true); } /** * 离线微博大小 * * @return */ public static int getOfflineStatusSize() { int[] values = new int[]{ 50, 100, 200 }; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return values[Integer.parseInt(prefs.getString("pOfflineStatusSize", "0"))]; } /** * 同时离线中图 * * @return */ public static boolean offlineMidPic() { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pLoadMidPicture", true); } /** * 同时离线图片线程大小 * * @return */ public static int offlinePicTaskSize() { int[] values = new int[]{ 10, 20, 30, 50 }; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return values[Integer.parseInt(prefs.getString("pOfflinePicTaskCount", "2"))]; } /** * 崩溃日志上传 * * @return */ public static boolean isCrashLogUpload() { // SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); // return prefs.getBoolean("pCrashLog", true); return true; } /** * 屏幕旋转 * * @return */ public static boolean isScreenRotate() { if (isDebug()) return true; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(GlobalContext.getInstance()); return prefs.getBoolean("pScreenRotate", false); } /** * 测试用,验证通知模块时,不自动清除数据 * * @return */ public static boolean ignoreUnread() { return false; } }