android工具类是new哪个,【Android 工具类】经常使用工具类(方法)大全

收集经常使用的工具类或者方法:

1.获取手机分辨率

/**

* 获取手机分辨率

*/

public static String getDisplayMetrix(Context context)

{

if (Constant.Screen.SCREEN_WIDTH == 0 || Constant.Screen.SCREEN_HEIGHT == 0)

{

if (context != null)

{

int width = 0;

int height = 0;

SharedPreferences DiaplayMetrixInfo = context.getSharedPreferences("display_metrix_info", 0);

if (context instanceof Activity)

{

WindowManager windowManager = ((Activity)context).getWindowManager();

Display display = windowManager.getDefaultDisplay();

DisplayMetrics dm = new DisplayMetrics();

display.getMetrics(dm);

width = dm.widthPixels;

height = dm.heightPixels;

Editor editor = DiaplayMetrixInfo.edit();

editor.putInt("width", width);

editor.putInt("height", height);

editor.commit();

}

else

{

width = DiaplayMetrixInfo.getInt("width", 0);

height = DiaplayMetrixInfo.getInt("height", 0);

}

Constant.Screen.SCREEN_WIDTH = width;

Constant.Screen.SCREEN_HEIGHT = height;

}

}

return Constant.Screen.SCREEN_WIDTH + "×" + Constant.Screen.SCREEN_HEIGHT;

}

2.关闭系统的软键盘

public class SoftKeyboardUtil {

/**

* 关闭系统的软键盘

*@param activity

*/

public static void dismissSoftKeyboard(Activity activity)

{

View view = activity.getWindow().peekDecorView();

if (view != null)

{

InputMethodManager inputmanger = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE);

inputmanger.hideSoftInputFromWindow(view.getWindowToken(), 0);

}

}

}

3.检測某程序是否安装

/**

* 检測某程序是否安装

*/

public static boolean isInstalledApp(Context context, String packageName)

{

Boolean flag = false;

try

{

PackageManager pm = context.getPackageManager();

List pkgs = pm.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);

for (PackageInfo pkg : pkgs)

{

// 当找到了名字和该包名同样的时候,返回

if ((pkg.packageName).equals(packageName))

{

return flag = true;

}

}

}

catch (Exception e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return flag;

}

4.安装APK文件

/**

* 安装.apk文件

*

*@param context

*/

public void install(Context context, String fileName)

{

if (TextUtils.isEmpty(fileName) || context == null)

{

return;

}

try

{

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

intent.setAction(android.content.Intent.ACTION_VIEW);

intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");

context.startActivity(intent);

}

catch (Exception e)

{

e.printStackTrace();

}

}

/**

* 安装.apk文件

*

*@param context

*/

public void install(Context context, File file)

{

try

{

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");

context.startActivity(intent);

}

catch (Exception e)

{

e.printStackTrace();

}

}

5.dp—px相互转换

/**

* 依据手机的分辨率从 dp 的单位 转成为 px(像素)

*

*@return 返回像素值

*/

public static int dp2px(Context context, float dpValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (dpValue * scale + 0.5f);

}

/**

* 依据手机的分辨率从 px(像素) 的单位 转成为 dp

*

*@return 返回dp值

*/

public static int px2dp(Context context, float pxValue) {

final float scale = context.getResources().getDisplayMetrics().density;

return (int) (pxValue / scale + 0.5f);

}

6. Strings.xml中“%s”的使用方式

在strings.xml中加入字符串

string name="text">Hello,%s!

代码中使用

textView.setText(String.format(getResources().getString(R.string.text),"Android"));

输出结果:Hello,Android!

7. 依据mac地址+deviceid获取设备唯一编码

private static String DEVICEKEY = "";

/**

* 依据mac地址+deviceid

* 获取设备唯一编码

*@return

*/

public static String getDeviceKey()

{

if ("".equals(DEVICEKEY))

{

String macAddress = "";

WifiManager wifiMgr = (WifiManager)MainApplication.getIns().getSystemService(MainApplication.WIFI_SERVICE);

WifiInfo info = (null == wifiMgr ? null : wifiMgr.getConnectionInfo());

if (null != info)

{

macAddress = info.getMacAddress();

}

TelephonyManager telephonyManager =

(TelephonyManager)MainApplication.getIns().getSystemService(MainApplication.TELEPHONY_SERVICE);

String deviceId = telephonyManager.getDeviceId();

DEVICEKEY = MD5Util.toMD5("android" + Constant.APPKEY + Constant.APPPWD + macAddress + deviceId);

}

return DEVICEKEY;

}

8. 获取手机及SIM卡相关信息

/**

* 获取手机及SIM卡相关信息

* @param context

* @return

*/

public static Map getPhoneInfo(Context context) {

Map map = new HashMap();

TelephonyManager tm = (TelephonyManager) context

.getSystemService(Context.TELEPHONY_SERVICE);

String imei = tm.getDeviceId();

String imsi = tm.getSubscriberId();

String phoneMode = android.os.Build.MODEL;

String phoneSDk = android.os.Build.VERSION.RELEASE;

map.put("imei", imei);

map.put("imsi", imsi);

map.put("phoneMode", phoneMode+"##"+phoneSDk);

map.put("model", phoneMode);

map.put("sdk", phoneSDk);

return map;

}

9.按两次返回键后退出应用

@Override

public boolean onKeyDown(int keyCode, KeyEvent event)

{

if (keyCode == KeyEvent.KEYCODE_MENU)

{

return false;

}

// 按两次返回键后退出应用

if (AppTools.getFirstData(IndexActivity.this))

{

if (keyCode == KeyEvent.KEYCODE_BACK)

{

if (System.currentTimeMillis() - touchTime > 1500)

{

Toast.makeText(IndexActivity.this, "再按一次退出应用", Toast.LENGTH_SHORT).show();

touchTime = System.currentTimeMillis();

}

else

{

ScreenManager.getScreenManager().popAllActivityExceptMain(IndexActivity.class);

finish();

}

}

return true;

}

else

{

return super.onKeyDown(keyCode, event);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值