package com.hz2hs.utils;
import java.io.File;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import com.hz2hs.constant.Constant;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.NetworkInfo.State;
import android.net.TrafficStats;
import android.os.Environment;
import android.os.StatFs;
public class Util {
/**
*
* getCurrentTime:获取系统当前时间
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-3 上午11:30:05
* @param @return
* @return String
* @throws
*/
public static String getCurrentTime() {
SimpleDateFormat sDateFormat = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
return sDateFormat.format(new java.util.Date());
}
/**
*
* px2dip:px转dp
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-3 上午11:30:26
* @param @param context
* @param @param pxValue
* @param @return
* @return int
* @throws
*/
public static int px2dip(Context context, float pxValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
/**
*
* dip2px:dp转px
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-3 上午11:30:41
* @param @param context
* @param @param dpValue
* @param @return
* @return int
* @throws
*/
public static int dip2px(Context context, float dpValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
/**
*
* getChineseName:获得SharedPreferences中的chineseame
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-9 上午11:20:57
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getChineseName(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("chineseame", "");
}
/**
*
* getUserId:获得SharedPreferences中的userId
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-9 上午11:21:30
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getUserId(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("userId", "");
}
/**
*
* getSmId:获得SharedPreferences中的smId
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-9 上午11:21:44
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getSmId(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("smId", "");
}
/**
*
* getPhoneNum:获得SharedPreferences中的PhoneNum
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 下午2:05:55
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getPhoneNum(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("account", "");
}
/**
*
* getPassWord:获得SharedPreferences中的password
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 下午1:54:26
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getPassWord(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("password", "");
}
/**
*
* getImei:获得SharedPreferences中的imei
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 下午2:07:05
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getImei(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("imei", "");
}
/**
*
* getImsi:获得SharedPreferences中的imsi
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 下午2:07:54
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getImsi(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("imsi", "");
}
/**
*
* getAgentId:获得SharedPreferences中的agentId
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-12 下午3:07:24
* @param @param context
* @param @return
* @return String
* @throws
*/
public static String getAgentId(Context context) {
SharedPreferences userInfo = context.getSharedPreferences("user_info",
0);
return userInfo.getString("agentId", "");
}
/**
* 检查SD卡状态,如果sd卡不存在或者SD卡剩余空间不足禁止程序启动
*
* @return
*/
public static boolean checkSDCardState() {
String state = Environment.getExternalStorageState();
File sd = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(sd.getPath());
double blockSize = stat.getBlockSize();
double freeBlocks = stat.getAvailableBlocks();
double countSize = blockSize * freeBlocks;
long role = 1024 * 1024 * 10;
if (state.equals(Environment.MEDIA_MOUNTED) && countSize > role) {
return true;
}
return false;
}
/**
*
* isConnectNet:是否连接到网络
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-2-17 下午3:45:47
* @param @param context
* @param @return
* @return Boolean
* @throws
*/
public static Boolean isConnectNet(Context context) {
ConnectivityManager con = (ConnectivityManager) context
.getSystemService(Activity.CONNECTIVITY_SERVICE);
NetworkInfo n1 =con.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
NetworkInfo n2 =con.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
State wifi = null;
State internet = null;
if(n1 !=null){
wifi = n1.getState();
}
if(n2 !=null){
internet = n2.getState();
}
if(internet == State.CONNECTED || internet==State.CONNECTING){
return true;
}
if(wifi == State.CONNECTED||wifi==State.CONNECTING){
return true;
}
else {
return false;
}
}
/**
*
* getAppFlow:获取本程序流量统计
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 上午10:19:26
* @param @return
* @return long
* @throws
*/
public static String getAppFlow() {
// 获取网络流量
long recv = TrafficStats.getUidRxBytes(android.os.Process.myUid());
long sent = TrafficStats.getUidTxBytes(android.os.Process.myUid());
return sizeToSize(recv + sent + "");
}
/**
*
* sizeToSize:字符串转化成文件大小格式
*
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-4-19 下午1:19:45
* @param @param size
* @param @return
* @return String
* @throws
*/
public static String sizeToSize(String size) {
double i = Double.parseDouble(size);
if (i >= 1024 * 1024 && i < 1024 * 1024 * 1024) {
i /= 1024 * 1024;
DecimalFormat df = new DecimalFormat("#.##");
return (df.format(i) + "MB");
} else if (i >= 1024 * 1024 * 1024) {
i /= 1024 * 1024 * 1024;
DecimalFormat df = new DecimalFormat("#.##");
return (df.format(i) + "GB");
} else if (i > 0 && i <= 1024) {
i /= 1024;
DecimalFormat df = new DecimalFormat("#.##");
return (df.format(i) + " B");
} else if (i >= 1024 && i < 1024 * 1024) {
i /= 1024 * 1024;
DecimalFormat df = new DecimalFormat("#.##");
return (df.format(i) + "KB");
} else {
return null;
}
}
private static final double EARTH_RADIUS = 6378137;
private static double rad(double d) {
return d * Math.PI / 180.0;
}
/**
*
* GetDistance:根据两点间经纬度坐标(double值),计算两点间距离,单位为米
* @author zuyp
* @version
* @since Ver 1.1
* @Date 2013 2013-5-14 上午11:40:31
* @param @param lng1
* @param @param lat1
* @param @param lng2
* @param @param lat2
* @param @return
* @return double
* @throws
*/
public static double GetDistance(double lng1, double lat1, double lng2,
double lat2) {
double radLat1 = rad(lat1);
double radLat2 = rad(lat2);
double a = radLat1 - radLat2;
double b = rad(lng1) - rad(lng2);
double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2)
+ Math.cos(radLat1) * Math.cos(radLat2)
* Math.pow(Math.sin(b / 2), 2)));
s = s * EARTH_RADIUS;
s = Math.round(s * 10000) / 10000;
return s;
}
}
- 大小: 18.4 KB
分享到:
相关推荐
本资料“Java-Android工具类”显然是一份包含了多种实用工具类的集合,旨在帮助开发者在Java和Android开发过程中节省时间和精力。 首先,我们来探讨一下SD工具类。在Android系统中,外部存储空间(如SD卡)通常用于...
本资源包括常用工具类,目前收录了数组工具类、异步工具类、base64工具类、bitmap工具类、缓存工具类、时间工具类、http连接、json、IO、Map、MD5、数据库、SD卡、UbbToHtml等工具类合集
这里提到的"android工具类 26个实用工具类"是一个集合,包含了多个针对Android开发的便捷函数。这些工具类可能包括网络请求、数据处理、UI操作、文件操作等多个方面,对于新手和有经验的开发者来说,都是提高开发...
本文将详细介绍一个基于Java Base64的Android加密解密工具类,该工具类支持公钥加密和私钥解密,具有高度的解耦性,方便集成到项目中。 一、Base64加密解密基础 Base64是一种编码方式,它将任意二进制数据转换为可...
2. **数据库操作工具类(DB.java)** Android中常用SQLite作为轻量级数据库,`DB.java`通常用于封装对SQLite的操作,如数据库的创建、升级、表的创建、数据的增删查改等。通过这个工具类,开发者可以避免直接编写...
"Android-轻量级android工具类辅助类通用类"这个项目提供了一套简洁而实用的工具集合,适合各种Android应用开发场景。 首先,我们来详细了解一下工具类(Utils)在Android开发中的作用。工具类通常包含一组静态方法...
android自定义log日志输出工具,该工具类具有以下优点: 1 在LogUtlis方法的第一个参数中填this可以输出当前类的名称,特别是在匿名内部类使用也可以输出当前类名。 如 : LogUtils.i(this,”这是一个实用的日志...
2. **日期时间工具类**: - `DateUtils`:提供了对日期和时间的处理,如格式化日期、计算两个日期之间的差值、获取当前时间等。 - `TimeUtils`:包含与时间相关的操作,例如将毫秒值转换为友好的显示格式。 3. **...
android线程池管理工具类,用来管理线程的一些操作,避免重复new线程造成的资源浪费
"AndroidUtilCode"是一个全面的Android工具类库,包含了多种实用功能,极大地提升了开发效率。这个库的核心目标是帮助开发者在处理常见任务时减少重复代码,提高代码质量。 AndroidUtilCode库涵盖了许多关键领域的...
以下是对"Android-简单的Android工具类包含ActivityFragmentApplication基类和各类常用工具类集合"这个主题的详细解析。 1. **Activity基类**: - Activity基类通常包含一些通用的方法,如初始化布局、处理权限、...
文件操作工具类,包含生成保存,复制,删除,读取,获取文件名,获取文件列表等等,只有你想不到,没有你找不到的Android端工具类,复制到项目中可直接使用
android高德地图封装工具类地图定位,绘制路径等等android高德地图封装工具类地图定位,绘制路径等等android高德地图封装工具类地图定位,绘制路径等等android高德地图封装工具类地图定位,绘制路径等等android高德...
本篇文章将详细探讨“Android-AndroidStudio快速创建常用工具类的插件”,以及如何利用这个名为Utils_plugin-master的插件来提升开发效率。 首先,理解“工具类”在Android开发中的概念至关重要。工具类通常是一些...
"Android判空工具类"就是为了解决这个问题而设计的,它提供了一些静态方法来简化对象空值检查的过程。 `isEmpty`和`isNotEmpty`是这个工具类中的两个关键方法。它们主要用来判断给定的对象或者集合是否为空。这两个...
2. **网络请求工具类**: - 可以使用`Retrofit`或`Volley`作为网络请求库,通过封装工具类,统一处理网络请求、错误处理、缓存策略等,提供简洁的API供其他模块调用。 3. **图片加载库工具类**: - `Glide`或`...
"android工具类"这个主题涵盖了从UI操作到网络请求,再到数据处理等多个方面的通用功能。下面我们将深入探讨一些常见的Android工具类及其功能。 1. **UI工具类**: - `ViewUtils`:此类通常包含与视图操作相关的...
2. **其他工具类**: - 可能包括字符串处理、日期时间格式化、文件操作、JSON解析等常见的工具类。例如,可以提供用于检查空值、字符串拼接、格式化日期等的方法。 - 图片处理工具类,可能包含图片压缩、裁剪、...
在Android开发中,工具类(Util Classes)是程序员经常使用的代码模块,它们提供了一系列静态方法,用于处理各种常见的任务,从而提高代码的可重用性和效率。以下是对"Android常用工具类"中涉及的一些关键知识点的...
以上就是关于Android中使用SP存储工具类的基本知识。通过这样的工具类,开发者可以更方便地管理SP中的数据,提高代码的可读性和可维护性。同时,对于更复杂的数据结构,可能需要考虑使用SQLite数据库或者Room库,...