Android 工具类
发布时间:2020-12-15 00:22:33 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 目前工具类中的方法有: 获取屏幕宽度高度密度 获取MAC地址 获取当前时间 日期格式转换 获取当前版本名,版本号 网络检测. import java.text.SimpleDate
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考
目前工具类中的方法有: 获取屏幕宽度高度密度 获取MAC地址 获取当前时间 日期格式转换 获取当前版本名,版本号 网络检测.
import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import android.app.Activity; import android.content.Context; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.text.TextUtils; import android.util.DisplayMetrics; public class MyUtils { /** * 获取屏幕宽度高度密度 * * 如果屏幕密度低,需要在工程的AndroidManifest.xml文件中,加入supports-screens节点 * <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:resizeable="true" android:anyDensity="true"/> * @param activity 屏幕界面 * @param type 类型1:宽度,2:高度,3:密度,4dpi密度 * @return 屏幕宽度或高度或密度 */ public Object getWindowSize(Activity activity,int type){ DisplayMetrics metric = new DisplayMetrics(); activity.getWindowManager().getDefaultDisplay().getMetrics(metric); if (type == 1) { int width = metric.widthPixels; // 屏幕宽度(像素) return width; }else if (type == 2) { int height = metric.heightPixels; // 屏幕高度(像素) return height; }else if (type == 3) { float density = metric.density; // 屏幕密度(0.75 / 1.0 / 1.5) return density; }else if (type == 4) { int densityDpi = metric.densityDpi; // 屏幕密度DPI(120 / 160 / 240) return densityDpi; } return 0; } /** * 获取MAC地址 * @param context 上下文 * @param replaceSymbol 替换字符,默认替换字符为"" * @return 返回MAC地址 错误返回12个0 */ public String getMacAddress(Context context,String replaceSymbol) { String macAddress = "000000000000"; if (replaceSymbol == null) { replaceSymbol = ""; } try { WifiManager wifiMgr = (WifiManager) context .getSystemService(Context.WIFI_SERVICE); WifiInfo info = (null == wifiMgr ? null : wifiMgr .getConnectionInfo()); if (null != info) { if (!TextUtils.isEmpty(info.getMacAddress())) macAddress = info.getMacAddress().replace(":",replaceSymbol); else return macAddress; } } catch (Exception e) { e.printStackTrace(); return macAddress; } return macAddress; } /** * 获取当前时间 * @param type 日期时间格式 * @param locale 地区默认为 Locale.CHINA * @return 按照格式返回当前时间 */ public String getCurrentTime(String type,Locale locale) { if (locale == null) { locale = Locale.CHINA; } Date curDate = new Date(System.currentTimeMillis()); SimpleDateFormat sdf = new SimpleDateFormat(type,locale); return sdf.format(curDate); } /** * 日期格式转换 * * @param date 待转换日期 * @param type 格式 * @param locale 地区 默认为 Locale.CHINA * @return 日期 */ public String formatDate(String date,String type,Locale locale) { String fmDate = ""; if (date != null) { if (locale == null) { locale = Locale.CHINA; } SimpleDateFormat sdf = new SimpleDateFormat(type,locale); fmDate = sdf.format(new Date(Long.parseLong(date))); } return fmDate; } /** * 获取当前版本名,版本号 * @param context 上下文 * @param type 1:版本名称,2:版本号 * @return 版本名或版本号 */ public Object getCurrentVersionName(Context context,int type){ PackageManager manager = context.getPackageManager(); String packageName = context.getPackageName(); String versionName = null; int versionCode = 0; try { PackageInfo info = manager.getPackageInfo(packageName,0); if (type == 1) { versionName = info.versionName; return versionName; }else if (type == 2) { versionCode = info.versionCode; return versionCode; } } catch (NameNotFoundException e) { e.printStackTrace(); return null; } return null; } /** * 网络检测 * @param context 上下文 * @return false:无网络,true:有网络 */ public boolean isOnline(Context context) { boolean isOnline = false; final ConnectivityManager cm = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); final NetworkInfo networkInfo = cm.getActiveNetworkInfo(); if (networkInfo != null) { isOnline = networkInfo.isAvailable(); } // String netType = "当前网络类型为:" + networkInfo.getTypeName(); return isOnline; } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- jsp、struts、spring、mybatis实现前端页面功能模
- java – while(condition){Object.wait()} idiom
- Java +selenium 爬Boss直聘中职位信息,薪资水平
- java Vector和ArrayList的分析及比较
- 什么是RMI,为什么要使用RMI框架?
- java – Hibernate中的transaction.commit()是什
- Java对象引用机制
- java对象与json对象之间互相转换实现方法示例
- 为什么java.io.FileDescriptor的构造函数是公共的
- database – UserTransaction中的Java多个数据库
热点阅读