工具类
#日期,版本号等等
/**
-
工具类
-
Created by MR.Z on 2020/9/17
*/
public class Tools {public static String getCurrentTime06() {
return getFormatTime(“yyMMdd”);
}/**
- 获取当前版本号
*/
public static String getVersionName(Context context) {
String verName = “”;
try {
verName = context.getPackageManager().
getPackageInfo(context.getPackageName(), 0).versionName;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return verName;
}
//如果原字符是空,则返回默认字符
public static String defaultString(String s, String defauStr) {
if (TextUtils.isEmpty(s)) {
return defauStr;
} else {
return s;
}
}public static String getCurrentDate() {
return getFormatTime(“yyyy-MM-dd”);
}public static String getCurrentTime() {
return getFormatTime(“yyyyMMddHHmmss”);
}/**
-
@param datastring 日期时间
-
@return 当前日期前一天
*/
public static String BackDate(String datastring) {
SimpleDateFormat DateFormat = new SimpleDateFormat(“yyyy-MM-dd”, Locale.getDefault());
Date date;
Calendar c = Calendar.getInstance();
try {
date = DateFormat.parse(datastring);
c.setTime(date);
} catch (ParseException e) {
e.printStackTrace();
}int day = c.get(Calendar.DATE);
c.set(Calendar.DATE, day - 1);
return new SimpleDateFormat(“yyyy-MM-dd”, Locale.getDefault()).format(c.getTime());
}
public static String getTime14() {
SimpleDateFormat formatter = new SimpleDateFormat(“yyyyMMddHHmmss”);
Date curDate = new Date(System.currentTimeMillis());
//获取当前时间
String str = formatter.format(curDate);
return str;
}public static int getYear(String datastring, String dateformat) {
return getCalendar(datastring, dateformat).get(Calendar.YEAR);
}public static int getMonth(String datastring, String dateformat) {
return getCalendar(datastring, dateformat).get(Calendar.MONTH) + 1;
}public static int getDayofMonth(String datastring, String dateformat) {
return getCalendar(datastring, dateformat).get(Calendar.DAY_OF_MONTH);
}public static Calendar getCalendar(String datastring, String dateformat) {
SimpleDateFormat DateFormat = new SimpleDateFormat(dateformat, Locale.getDefault());//“yyyy-MM-dd”
Date date;
Calendar c = Calendar.getInstance();
try {
date = DateFormat.parse(datastring);
c.setTime(date);
} catch (ParseException e) {
e.printStackTrace();
}
return c;
}/**
-
@return 当前日期后一天
*/
public static String AddDate(String datastring) {
SimpleDateFormat DateFormat = new SimpleDateFormat(“yyyy-MM-dd”, Locale.getDefault());
Date date;
Calendar c = Calendar.getInstance();
try {
date = DateFormat.parse(datastring);
c.setTime(date);
} catch (ParseException e) {
e.printStackTrace();
}int day = c.get(Calendar.DATE);
c.set(Calendar.DATE, day + 1);
return new SimpleDateFormat(“yyyy-MM-dd”, Locale.getDefault()).format(c.getTime());
}
public static String getTimeByNum(int last) {
Calendar calendar = Calendar.getInstance();
Date date = new Date();
calendar.setTime(date);
calendar.add(Calendar.DATE, last);return new SimpleDateFormat("yyyyMMdd240000", Locale.getDefault()).format(calendar.getTime());
}
public static String getFormatTime(String format) {
Date currentDate = new Date();
SimpleDateFormat formatter = new SimpleDateFormat(format, Locale.getDefault());
return formatter.format(currentDate);
}public static JSONObject transObject(JSONObject o1) {
JSONObject o2 = new JSONObject();
try {
Iterator it = o1.keys();
while (it.hasNext()) {
String key = (String) it.next();
Object object = o1.get(key);
if (object.getClass().toString().endsWith(“String”)) {
o2.accumulate(key.toLowerCase(), object);
} else if (object.getClass().toString().endsWith(“JSONObject”)) {
o2.accumulate(key.toLowerCase(), Tools.transObject((JSONObject) object));
} else if (object.getClass().toString().endsWith(“JSONArray”)) {
o2.accumulate(key.toLowerCase(), Tools.transArray(o1.getJSONArray(key)));
}
}
} catch (Exception e) {
e.printStackTrace();
}
return o2;
}public static JSONArray transArray(JSONArray o1) {
JSONArray o2 = new JSONArray();
try {
for (int i = 0; i < o1.length(); i++) {
Object jArray = o1.getJSONObject(i);
if (jArray.getClass().toString().endsWith(“JSONObject”)) {
o2.put(Tools.transObject((JSONObject) jArray));
} else if (jArray.getClass().toString().endsWith(“JSONArray”)) {
o2.put(Tools.transArray((JSONArray) jArray));
}
}
} catch (Exception e) {
e.printStackTrace();
}
return o2;
}//获取IMEI码
@SuppressLint(“HardwareIds”)
public static String getImie(Context context) {
TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String android_id = Settings.System.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {
return android_id;
} else {
if (ActivityCompat.checkSelfPermission(context, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {
return “”;
}
return tm.getDeviceId() == null ? android_id : tm.getDeviceId();
}
}// 判断当前网络是否可用 netInfo.isConnected(),
public static boolean isOnline() {
try {
ConnectivityManager cm = (ConnectivityManager) BaseApplication.appContext.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && (netInfo.isConnectedOrConnecting() || netInfo.isAvailable())) {
return true;
}netInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); if (netInfo != null && netInfo.isConnectedOrConnecting()) { return true; } else { netInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI); if (netInfo != null && netInfo.isConnectedOrConnecting()) { return true; } } } catch (Exception e) { Log.e("tmessages", e.getMessage()); return false; } return false;
}
public static void runOnUIThread(Runnable runnable) {
runOnUIThread(runnable, 0);
}public static void runOnUIThread(Runnable runnable, long delay) {
if (delay == 0) {
BaseApplication.applicationHandler.post(runnable);
} else {
BaseApplication.applicationHandler.postDelayed(runnable, delay);
}
}
} - 获取当前版本号