集合几个工具方法,方便以后使用。

1.获取手机 分辨率屏幕:

public static void printScreenInfor(Context context){        DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();        int width = displayMetrics.widthPixels;        int height = displayMetrics.heightPixels;        float density = displayMetrics.density;        float scaledDensity = displayMetrics.scaledDensity;        Log.d(null, String.format("screen info: width = %d, height = %d, density = %f , scaledDensity = %f ", width, height, density, scaledDensity));    }

2.获取手机 密度

 1   public static double getDensity(Activity context) { 2         DisplayMetrics displaysMetrics = new DisplayMetrics(); 3         if(context == null ){ 4             LogHelper.e(LogHelper.APPUTIL, "传入的应为activity"); 5             return 0; 6         } 7         context.getWindowManager().getDefaultDisplay().getMetrics(displaysMetrics); 8         float density = displaysMetrics.scaledDensity; 9 10         return density;11     }

3.获取手机的dp和px转化:

public static int dip2px(Context context, float dipValue) {        final float scale = context.getResources().getDisplayMetrics().density;        return (int) (dipValue * scale + 0.5f);    } public static int px2dip(Context context, float pxValue) {        final float scale = context.getResources().getDisplayMetrics().density;        return (int) (pxValue / scale + 0.5f);    }

4.获取手机真实的物理尺寸

 public static double getScreenPhysicalSize(Activity activity) {         DisplayMetrics dm = new DisplayMetrics();         activity.getWindowManager().getDefaultDisplay().getMetrics(dm);         double diagonalPixels = Math.sqrt(Math.pow(dm.widthPixels, 2) + Math.pow(dm.heightPixels, 2));         return diagonalPixels / (160 * dm.density);     }

5.判断手机是否是平板

1   public static boolean isTablet(Context context) {2         return (context.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE;3     }

6.获取手机的编译版本 制造厂商等

1 String osVersion = android.os.Build.VERSION.SDK;//编译版本2 String model = Build.MODEL;//手机品牌3 String manufacture = Build.manufacture;//4 String cpu = Build.cpu_ABI;

7.获取手机mac地址等

1 public String getLocalMacAddress() {   2         WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);   3         WifiInfo info = wifi.getConnectionInfo();   4         return info.getMacAddress();   5     }  

8.判断是有网络

 1 public static boolean isNetworkAvailable(Context context) { 2         boolean flag = false; 3         if (context != null) { 4             ConnectivityManager connMgr = (ConnectivityManager) context 5                     .getSystemService(Context.CONNECTIVITY_SERVICE); 6             NetworkInfo networkInfo = connMgr.getActiveNetworkInfo(); 7             if (networkInfo != null && networkInfo.isConnected()) { 8                 flag = true; 9             }10         }11         return flag;12     }

9.其他待补充

更多相关文章

  1. Android 判断当前设备是手机还是平板的最有效的方法
  2. Android手机开机动画的修改
  3. android中将数据写入手机内存和sdcard中的文件
  4. android SQLiteDatabase中版本控制作用详解
  5. Dev Guide/Framework Topics/Search-版本为Android 4.0 r1
  6. 【Android】1.6版本所有权限
  7. Android 9 安装更新 apk,适用于android 9及以下安卓版本。
  8. android GB版本的camera,录像过程中按“菜单”键会停止录像

随机推荐

  1. 转- ADB(Android Debug Bridge)技术实现
  2. Android(安卓)ndk入门准备--hello jni
  3. TAG解决错误:Error:No resource identifie
  4. ubuntu android studio ndk 配置
  5. android-获取手机电话的状态
  6. Android导入源码
  7. 调用Android系统设置中的Intent
  8. Android中WebView使用规范
  9. Android中使用开源框架Citypickerview实
  10. Android常用布局组件----重新认识Android