系统工具类
public class SystemUtil {
/**
* 检查WIFI是否连接
*/
public static boolean isWifiConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) App.getInstance().getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo wifiInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
return wifiInfo != null;
}
/**
* 检查手机网络(4G/3G/2G)是否连接
*/
public static boolean isMobileNetworkConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) App.getInstance().getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mobileNetworkInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
return mobileNetworkInfo != null;
}
/**
* 检查是否有可用网络
*/
public static boolean isNetworkConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) App.getInstance().getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
return connectivityManager.getActiveNetworkInfo() != null;
}
/**
* 保存文字到剪贴板
* @param context
* @param text
*/
public static void copyToClipBoard(Context context, String text) {
ClipData clipData = ClipData.newPlainText("url", text);
ClipboardManager manager = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
manager.setPrimaryClip(clipData);
ToastUtil.shortShow("已复制到剪贴板");
}
/**
* 保存图片到本地
* @param context
* @param url
* @param bitmap
*/
public static Uri saveBitmapToFile(Context context, String url, Bitmap bitmap,View container, boolean isShare){
String fileName = url.substring(url.lastIndexOf("/"),url.lastIndexOf(".")) + ".png";
File fileDir = new File(Constants.PATH_SDCARD);
if (!fileDir.exists()){
fileDir.mkdirs();
}
File imageFile = new File(fileDir,fileName);
Uri uri = Uri.fromFile(imageFile);
if (isShare && imageFile.exists()) {
if (Build.VERSION.SDK_INT >= 24) {
uri = FileProvider.getUriForFile(context.getApplicationContext(),
Constants.FILE_PROVIDER_AUTHORITY, imageFile);
}
return uri;
}
try {
FileOutputStream fos = new FileOutputStream(imageFile);
boolean isCompress = bitmap.compress(Bitmap.CompressFormat.PNG, 90, fos);
if (isCompress) {
SnackbarUtil.showShort(container,"保存妹纸成功n(*≧▽≦*)n");
} else {
SnackbarUtil.showShort(container,"保存妹纸失败ヽ(≧Д≦)ノ");
}
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
SnackbarUtil.showShort(container,"保存妹纸失败ヽ(≧Д≦)ノ");
}
try {
MediaStore.Images.Media.insertImage(context.getContentResolver(), imageFile.getAbsolutePath(), fileName, null);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,uri));
if (Build.VERSION.SDK_INT >= 24) {
uri = FileProvider.getUriForFile(context.getApplicationContext(),
Constants.FILE_PROVIDER_AUTHORITY, imageFile);
}
return uri;
}
/**
* 根据手机的分辨率从 dp 的单位 转成为 px(像素)
*/
public static int dp2px(Context context, float dpValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
public static int dp2px(float dpValue) {
final float scale = App.getInstance().getResources().getDisplayMetrics().density;
return (int) (dpValue * scale + 0.5f);
}
/**
* 根据手机的分辨率从 px(像素) 的单位 转成为 dp
*/
public static int px2dp(Context context, float pxValue) {
final float scale = context.getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
public static int px2dp(float pxValue) {
final float scale = App.getInstance().getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
/**
* 获取进程号对应的进程名
*
* @param pid 进程号
* @return 进程名
*/
public static String getProcessName(int pid) {
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader("/proc/" + pid + "/cmdline"));
String processName = reader.readLine();
if (!TextUtils.isEmpty(processName)) {
processName = processName.trim();
}
return processName;
} catch (Throwable throwable) {
throwable.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (IOException exception) {
exception.printStackTrace();
}
}
return null;
}
}
snackbar工具类
public class SnackbarUtil {
public static void show(View view, String msg) {
Snackbar.make(view, msg, Snackbar.LENGTH_LONG).show();
}
public static void showShort(View view, String msg) {
Snackbar.make(view, msg, Snackbar.LENGTH_SHORT).show();
}
}
xml解析工具类
public class XmlUtil {
public static ArrayMap<String, ArrayMap<String,String>> parseNodes(XmlResourceParser xmlResourceParser) throws Exception{
if (xmlResourceParser==null)
return null;
ArrayMap<String, ArrayMap<String,String>> map = null;
ArrayMap<String,String> nodeMap = null;
int root=xmlResourceParser.getEventType();
while (root!= XmlResourceParser.END_DOCUMENT){
switch (root){
case XmlResourceParser.START_DOCUMENT:
map = new ArrayMap<>();
break;
case XmlResourceParser.START_TAG:
if("index".equals(xmlResourceParser.getName())){
String nodeName = xmlResourceParser.getAttributeValue(0);
nodeMap = new ArrayMap<>();
if (map != null) {
map.put(nodeName, nodeMap);
}
}
else if ("node".equals(xmlResourceParser.getName())){
String node = xmlResourceParser.getAttributeValue(0);
String nodeName = xmlResourceParser.nextText();
if (nodeMap != null) {
nodeMap.put(node, nodeName);
}
}
break;
case XmlResourceParser.END_TAG:
if("index".equals(xmlResourceParser.getName())){
nodeMap = null;
}
break;
}
root=xmlResourceParser.next();
}
return map;
}
}
```1
网友评论