Android系统信息工具类
发布时间:2020-05-24 22:14:00 所属栏目:Java 来源:互联网
导读:Android系统信息工具类
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 public class SystemInfoUtils {
public static int getRunningAppProcesses(Context context) {// 得到当前系统内运行的app进程数量
ActivityManager am = (ActivityManager) context
.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> appInfos = am.getRunningAppProcesses();
return appInfos.size();
}
public static List<HashMap<String,Object>> getAppInfo(Context context) {// 得到非系统应用的app信息
List<HashMap<String,Object>> appInfos = new ArrayList<HashMap<String,Object>>();
HashMap<String,Object> map = null;
List<PackageInfo> packages = context.getPackageManager()
.getInstalledPackages(0);// 参数传入0表示过滤权限,因为可能有的手机不让你获取应用信息
for (PackageInfo temp : packages) {
if ((temp.applicationInfo.flags & temp.applicationInfo.FLAG_SYSTEM) == 0) {
// 非系统应用
// 得到应用的名称
String appName = temp.applicationInfo.loadLabel(
context.getPackageManager()).toString();
// 得到应用图标
Drawable appIcon = temp.applicationInfo.loadIcon(context
.getPackageManager());
// 得到应用最后一次更新的时间
long lastUpdateTime = temp.lastUpdateTime;
// 得到应用的包名
String packageName = temp.packageName;
// 得到应用的版本信息
String versionName = temp.versionName;
map = new HashMap<String,Object>();
map.put("appName",appName);
map.put("appIcon",appIcon);
map.put("lastUpdateTime",lastUpdateTime);
map.put("packageName",packageName);
map.put("versionName",versionName);
appInfos.add(map);// 把应用信息加入集合中返回
map = null;
} else {
// 系统应用
}
}
return appInfos;
}
// 获取sd卡容量
public static String getSdSize(Context context) {
String totalStr = null,availStr = null;
if (Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED)) {// 判断是否检测到sd卡
File path = Environment.getExternalStorageDirectory();
StatFs stat = new StatFs(path.getPath());
long blockSize = stat.getBlockSizeLong();
long availableBlocks = stat.getAvailableBlocksLong();
long totalBlocks = stat.getBlockCountLong();
long totalSize = blockSize * totalBlocks;
long availSize = blockSize * availableBlocks;
totalStr = Formatter.formatFileSize(context,totalSize);
availStr = Formatter.formatFileSize(context,availSize);
} else
Toast.makeText(context,"没有检测到SD卡,请检查是否正确插入",Toast.LENGTH_SHORT)
.show();
return "SD卡总容量为:" + totalStr + "可用为:" + availStr;
}
// 获取手机内存
public static String getRomSave(Context context) {
String totalStr = null,availStr = null;
File path = Environment.getDataDirectory();
StatFs stat = new StatFs(path.getPath());// 得到手机内存的路径
long blockSize = stat.getBlockSizeLong();
long availableBlocks = stat.getAvailableBlocksLong();
long totalBlocks = stat.getBlockCountLong();
long totalSize = blockSize * totalBlocks;
long availSize = blockSize * availableBlocks;
totalStr = Formatter.formatFileSize(context,totalSize);
availStr = Formatter.formatFileSize(context,availSize);
return "手机内存总大小为:" + totalStr + "可用空间为:" + availStr;
}
}
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读
