Androidのいくつかのツール方法
8724 ワード
いくつかのツール方法を集めて、後で使いやすいようにします.
1.携帯電話の解像度画面を取得する:
2.携帯電話の密度を取得する
3.携帯電話のdpとpx変換を取得する:
4.携帯電話の実際の物理サイズを取得する
5.携帯電話がタブレットかどうかを判断する
6.携帯電話のコンパイル版メーカー等を取得する
7.携帯電話のmacアドレスなどを取得する
8.ネットワークがあると判断
9.その他補充すべきもの
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.その他補充すべきもの