巴蜀职业,无良妖皇,上海男科
android获取储存信息以及内存信息可以用adb命令查看。
adb查看系统内存信息以及储存信息:
命令:adb shell cat /proc/meminfo
代码:
private static final string filename_proc_meminfo = "/proc/meminfo"; /** * 获取手机内存总大小 * @return */ public static string gettotalmemorysize() { try { filereader fr = new filereader(filename_proc_meminfo); bufferedreader br = new bufferedreader(fr, 2048); // string memoryline = br.readline(); string submemoryline = ""; string line = ""; while ((line = br.readline()) != null) { if (line.contains("memtotal:")){ submemoryline = line.substring(line.indexof("memtotal:")); break; } } br.close(); matcher mer = pattern.compile("^[0-9]+$").matcher(submemoryline.replaceall("\\d+", "")); //如果为正整数就说明数据正确的,确保在double.parsedouble中不会异常 if (mer.find()) { long memsize = integer.parseint(submemoryline.replaceall("\\d+", "")) ; double mem = (double.parsedouble(memsize + "")/1024)/1024; numberformat nf = new decimalformat( "0.0 "); mem = double.parsedouble(nf.format(mem)); //log.e(log_tag,"=========mem================ " + mem); return string.valueof(mem); } } catch (ioexception e) { e.printstacktrace(); } return "unavailable"; } /** * 获取手机剩余内存大小 * @return */ public static string getfreememorysize() { try { filereader fr = new filereader(filename_proc_meminfo); bufferedreader br = new bufferedreader(fr, 2048); // string memoryline = br.readline(); string submemoryline = ""; string line = ""; while ((line = br.readline()) != null) { if (line.contains("memfree:")){ submemoryline = line.substring(line.indexof("memfree:")); break; } } br.close(); matcher mer = pattern.compile("^[0-9]+$").matcher(submemoryline.replaceall("\\d+", "")); //如果为正整数就说明数据正确的,确保在double.parsedouble中不会异常 if (mer.find()) { long memsize = integer.parseint(submemoryline.replaceall("\\d+", "")) ; double mem = (double.parsedouble(memsize + "")/1024)/1024; numberformat nf = new decimalformat( "0.0 "); mem = double.parsedouble(nf.format(mem)); //log.e(log_tag,"=========mem================ " + mem); return string.valueof(mem); } } catch (ioexception e) { e.printstacktrace(); } return "unavailable"; }
adb 获取手机储存大小:
命令:adb shell cat /proc/partitions
代码:
private static final string filename_proc_emmcinfo = "/proc/partitions"; /** * 获取手机储存大小 * @return */ public static string getemmcsize() { try { filereader fr = new filereader(filename_proc_emmcinfo); bufferedreader br = new bufferedreader(fr, 2048); string line = ""; string emmcsize = ""; while ((line = br.readline()) != null) { if (line.length() >7 && line.lastindexof(" ") > 0) { if (line.substring(line.lastindexof(" ") + 1 , line.length()).equals("mmcblk0")) { emmcsize = removeallspace(line); break; } } } br.close(); if (emmcsize.length() >7 ){ emmcsize = (string) emmcsize.subsequence(4, emmcsize.length()-7); matcher mer = pattern.compile("^[0-9]+$").matcher(emmcsize); //如果为正整数就说明数据正确的,确保在double.parsedouble中不会异常 if (mer.find()) { double mem = (double.parsedouble(emmcsize)/1024)/1024; numberformat nf = new decimalformat( "0.0 "); mem = double.parsedouble(nf.format(mem)); return string.valueof(mem); } } return "0"; } catch (ioexception e) { e.printstacktrace(); } return "unavailable"; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio开发小型对话机器人app(实例代码)
Android通过Java sdk的方式接入OpenCv的方法
Android 通过cmake的方式接入opencv的方法步骤
Android Studio finish()方法的使用与解决app点击“返回”(直接退出)
Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)
网友评论