结构
工具类:
1:常用SharedPreferences储存轻量数据,提供一个GET,SET方法
2:将流转换为字符串对象(用在解析JSON处)
3:将常量封装到一个类中,方便提取
4:判断服务是否正在运行
1:常用SharedPreferences储存轻量数据,提供一个GET,SET方法
模版:
public class SpUtil {
private static SharedPreferences sp;
/**
*
* @param ctx 上下文环境
* @param key 存储节点的名称
* @param value 存储节点的值
*/
//写
public static void PutBoolean (Context ctx , String key ,Boolean value){
if(sp==null){
//这里的两个参数 第一个是 存储文件的名称,第二个是读取方式,一般是Context.MODE_APPEND
sp = ctx.getSharedPreferences("config", Context.MODE_APPEND);
}
sp.edit().putBoolean(key,value).commit();
}
/**
*
* @param ctx 上下文环境
* @param key 存储节点的名称
* @param deftvalue 存储节点的默认值
* @return 默认值或者读取到的值
*/
//读
public static boolean getBoolean(Context ctx, String key, Boolean deftvalue){
if(sp==null){
//这里的两个参数 第一个是 存储文件的名称,第二个是读取方式,一般是Context.MODE_APPEND
sp = ctx.getSharedPreferences("config", Context.MODE_APPEND);
}
return sp.getBoolean(key,deftvalue);
}
2:将流转换为字符串对象(用在解析JSON处)
//这个方法是将流类型转为字符串对象
public class StreamUtil {
//前面类的临时数据可以通过参数的方式传进来
public static String streamToString(InputStream is) {
//1,在读取的过程中,将读取的内容存储值缓存中,然后一次性的转换成字符串返回
ByteArrayOutputStream bos = new ByteArrayOutputStream();
//2,读流操作,读到没有为止(循环)
byte[] buffer = new byte[1024];
//3,记录读取内容的临时变量
int temp = -1;
try {
while((temp = is.read(buffer))!=-1){
bos.write(buffer, 0, temp);
}
//返回读取数据
return bos.toString();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
is.close();
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
}
3:将常量封装到一个类中,方便提取
public class FianlMath {
//是否更新的KEY
public static final String OPEN_UPDATA = "open_updata";
//这个NAME_SPACE 是自定义属性的。
public static final String NAME_SPACE ="http://schemas.android.com/apk/res/com.joker.mobilesafe";
//检测是否第一次进入手机防盗的key
public static final String MOBILES_SAVE_PSD ="mobiles_safe";
//检测手机防盗是否设置完成的key
public static final String SET_OVER ="set_over";
//检测是否绑定了SIM卡的KEY
public static final String SIM_BIND ="sim_bind";
//存储联系人的KEY
public static final String CONTACT_MAN ="contact_man";
/**
* 判断第一个页面的CK是否被勾上
*/
public static final String CK_SAVE ="ck_save";
//显示吐司样式的Key
public static final String STYLE_TOAST ="style_toast";
//记录吐司弹窗控件左(上)角位置
public static final String TOAST_LEFT ="toast_left";
//记录吐司弹窗控件(左)上角位置
public static final String TOAST_TOP ="toast_top";
}
4:判断服务是否正在运行
public class ServiceUtil {
public static boolean isRunning(Context context,String name){
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
//获取正在运行的服务名字,后面的1000表示 能获取的最多的服务数量
List<ActivityManager.RunningServiceInfo> runningServices = activityManager.getRunningServices(1000);
for(ActivityManager.RunningServiceInfo runningServices1 : runningServices ){
//获取服务名称
String ServiceName = runningServices1.service.getClassName();
if (ServiceName.equals(name)){
return true;
}
}
return false;
}
}