• 注册
当前位置:1313e > 默认分类 >正文

实用代码4

随时随地技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)

1、

	/*** 获取指定程序下所有Action为Intent.ACTION_MAIN的Activity* * @param context*            上下文对象* @param pkg*            包名* @return 指定程序下所有Action为Intent.ACTION_MAIN的Activity的集合*/public static List getActivities(Context context, String pkg) {List result = new ArrayList();Intent intent = new Intent(Intent.ACTION_MAIN, null);intent.setPackage(pkg);List list = context.getPackageManager().queryIntentActivities(intent, 0);if (DataUtil.isEmpty(list)) {return null;}for (ResolveInfo info : list) {result.add(info.activityInfo.name);}return result;}

2、

/*** 获取指定已安装的APK的安装路径(如:/data/app/com.home.util-2.apk)* * @param context*            上下文对象* @param pkg*            包名* @return 指定APK的安装路径*/public static String getAppSourceDir(Context context, String pkg) {PackageManager pm = context.getPackageManager();List list = pm.getInstalledApplications(0);if (DataUtil.isEmpty(list)) {return null;}for (ApplicationInfo appInfo : list) {if (appInfo.packageName.equals(pkg)) {return appInfo.sourceDir;}}return null;}


3、

	/*** 泛型的集合转为数组* * @param cls*            类模板* @param list*            源集合* @return 转换后的数组*/@SuppressWarnings("unchecked")public static  T[] listToArray(Class cls, List list) {if (isEmpty(list)) {return (T[]) Array.newInstance(cls, 0);}return list.toArray((T[]) Array.newInstance(cls, list.size()));}


4、

	/*** 检测文本是否全为中文* * @param text*            文本* @return 全为中文返回true,否则返回false*/public static boolean isChinese(String text) {if (isEmpty(text)) {return false;}return text.matches("[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+");}


5、

	/*** 检测文本中是否包含汉字* * @param text*            文本* @return 包含返回true,否则返回false*/public static boolean isHasChinese(String text) {final String format = "[\\u4E00-\\u9FA5\\uF900-\\uFA2D]";boolean result = false;Pattern pattern = Pattern.compile(format);Matcher matcher = pattern.matcher(text);result = matcher.find();return result;}


6、

	/*** 保存ListView的当前位置* * @param context*            上下文对象* @param lv*            ListView实例* */public static void saveListViewCurPos(Context context, ListView lv) {int pos = lv.getFirstVisiblePosition();View v = lv.getChildAt(0);int top = (v == null) ? 0 : v.getTop();SharedUtil.saveInt(context, Constant.DEFAULT_SHARE_NAME, "pos", pos);SharedUtil.saveInt(context, Constant.DEFAULT_SHARE_NAME, "top", top);}/*** 恢复ListView的之前位置* * @param context*            上下文对象* @param lv*            ListView实例* @return 恢复成功返回true,否则返回false*/public static boolean resumeListViewPos(Context context, ListView lv) {int pos = SharedUtil.getInt(context, Constant.DEFAULT_SHARE_NAME, "pos", -1);int top = SharedUtil.getInt(context, Constant.DEFAULT_SHARE_NAME, "top", -1);if (pos == -1 || top == -1) {return false;}lv.setSelectionFromTop(pos, top);return true;}


7、

	/*** 获取手机ip地址* * @param context*            上下文对象* @return ip地址*/@SuppressWarnings("deprecation")public static String getPhoneIp(Context context) {int ip = getWifiManager(context).getConnectionInfo().getIpAddress();return android.text.format.Formatter.formatIpAddress(ip);}


8、

	/*** 文件夹排序(先文件夹排序后文件排序)* * @param files*            文件数组*/public static void sortFiles(File[] files) {Arrays.sort(files, new Comparator() {@Overridepublic int compare(File file1, File file2) {boolean l1 = file1.isDirectory();boolean l2 = file2.isDirectory();if (l1 && !l2)return -1;else if (!l1 && l2)return 1;else {return file1.getName().compareTo(file2.getName());}}});}



 

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 162202241@qq.com 举报,一经查实,本站将立刻删除。

最新评论

欢迎您发表评论:

请登录之后再进行评论

登录
相关推荐