Android读取RAM,ROM,SD卡容量
1)简介
一般人们在买手机的时候,在手机配置上都会出现“内存容量:512MB ROM+512MB RAM ”等等类似这样的说明,可能很多人都知道RAM的意思就是运存的意思,但是对于rom容量是什么意思,确很少有人知道,还有rom容量和ram容量有什么区别,知道的人也不是很多。今天安卓中文网小编就来为大家详细解释下rom容量是什么意思以及rom容量和ram容量有什么区别。
对于所谓的RAM其实就是运行内存的意思,人们简称为运存,它的作用是当开机后系统运行占一部分外,剩余的运行内存越大,手机速度越快,运行的程序越多,剩余越少。然而ROM就相当于C盘,大家都应该知道在用电脑的时候一般我们不会将安装程序安装到系统盘,因为那样可能会影响机器运行速度,因此rom容量的意思就类似于理解为手机中“C盘”的容量。因为ROM文件过多也会影响速度,不过存放到ROM的文件和程序,读取起来会比放到卡里的快的多。卡就像是除了C盘外的硬盘。当然ram和rom究竟多少合适还要看系统,系统对于内存的占用情况是有很大差距的。
2)代码部分
- package com.example.androidtest4;
- import java.io.File;
- import java.text.DecimalFormat;
- import android.os.Bundle;
- import android.os.Environment;
- import android.os.StatFs;
- import android.app.Activity;
- import android.app.ActivityManager;
- import android.app.ActivityManager.MemoryInfo;
- import android.content.Context;
- import android.view.Menu;
- import android.widget.TextView;
- public class MainActivity extends Activity {
- private TextView rAMTextView=null;
- private TextView rOMTextView=null;
- private TextView sDTextView=null;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- rAMTextView=(TextView)findViewById(R.id.rAMTextView);
- showRAMInfo();
- rOMTextView=(TextView)findViewById(R.id.rOMTextView);
- showROMInfo();
- sDTextView=(TextView)findViewById(R.id.sDTextView);
- showSDInfo();
- }
- /*显示RAM的可用和总容量,RAM相当于电脑的内存条*/
- private void showRAMInfo(){
- ActivityManager am=(ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
- MemoryInfo mi=new MemoryInfo();
- am.getMemoryInfo(mi);
- String[] available=fileSize(mi.availMem);
- String[] total=fileSize(mi.totalMem);
- rAMTextView.setText("RAM "+available[0]+available[1]+"/"+total[0]+total[1]);
- }
- /*显示ROM的可用和总容量,ROM相当于电脑的C盘*/
- private void showROMInfo(){
- File file=Environment.getDataDirectory();
- StatFs statFs=new StatFs(file.getPath());
- long blockSize=statFs.getBlockSize();
- long totalBlocks=statFs.getBlockCount();
- long availableBlocks=statFs.getAvailableBlocks();
- String[] total=fileSize(totalBlocks*blockSize);
- String[] available=fileSize(availableBlocks*blockSize);
- rOMTextView.setText("ROM "+available[0]+available[1]+"/"+total[0]+total[1]);
- }
- /*显示SD卡的可用和总容量,SD卡就相当于电脑C盘以外的硬盘*/
- private void showSDInfo(){
- if(Environment.getExternalStorageState().equals
- (Environment.MEDIA_MOUNTED)){
- File file=Environment.getExternalStorageDirectory();
- StatFs statFs=new StatFs(file.getPath());
- long blockSize=statFs.getBlockSize();
- long totalBlocks=statFs.getBlockCount();
- long availableBlocks=statFs.getAvailableBlocks();
- String[] total=fileSize(totalBlocks*blockSize);
- String[] available=fileSize(availableBlocks*blockSize);
- sDTextView.setText("SD "+available[0]+available[1]+"/"+total[0]+total[1]);
- }else {
- sDTextView.setText("SD CARD 已删除");
- }
- }
- /*返回为字符串数组[0]为大小[1]为单位KB或者MB*/
- private String[] fileSize(long size){
- String str="";
- if(size>=1000){
- str="KB";
- size/=1000;
- if(size>=1000){
- str="MB";
- size/=1000;
- }
- }
- /*将每3个数字用,分隔如:1,000*/
- DecimalFormat formatter=new DecimalFormat();
- formatter.setGroupingSize(3);
- String result[]=new String[2];
- result[0]=formatter.format(size);
- result[1]=str;
- return result;
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.main, menu);
- return true;
- }
- }
Android读取RAM,ROM,SD卡容量的更多相关文章
- Android之外部存储(SD卡)
*手机的外部存储空间,这个我们可以理解成电脑的外接移动硬盘,U盘也行.所有的Android设备都有两个文件存储区域:“内部”和“外部”存储器.这两个名称来自早期的Android,当时大多数设备都提供内 ...
- [android] 保存文件到SD卡
/****************2016年5月4日 更新*****************************/ 知乎:为什么很多Android应用要把文件写到/sdcard目录下而不是写到/d ...
- Android数据存储之SD卡
为了更好的存取应用程序的大文件数据,应用程序需要读. 写SD卡上的文件.SD卡大大扩充手机的存储能力. 操作SD首先要加权限: <!--在SDCard中创建与删除文件权限 --> < ...
- android 写文件到sd卡问题小记
android 写文件到sd卡问题小记 事情是这样子的.... 这天我开始编写项目调试工具,高大上不?-----其实就是记录实时网络请求和崩溃日志相关等的小工具(此处一个会心的微笑). 然后我是这样写 ...
- Android中播放本地SD卡中歌曲须要的加入的权限
使用MediaPlayer播放本地Mp3文件时.须要注意的訪问路径的问题以及訪问权限的问题. 1.訪问路径:/storage/emulated/0 此路径即为手机的根路径,能够通过下载ES文件浏览器软 ...
- Android(java)学习笔记126:判断SD卡状态和SD卡容量
1. 判断SD卡状态和SD卡存储空间大小 当我们在使用SD卡时候,如果我们想往SD卡里读写数据,我们必须在这之前进行一个逻辑判断,那就是判断SD卡状态和SD存储空间大小: 核心代码: String s ...
- Android设备内存和SD卡操作工具类
package cc.c; import java.io.File; import java.util.List; import android.os.StatFs; import java.io.F ...
- 以 SPI 方式获取 SD 卡容量(V2.0)
下面是 SD 卡 V2.0 协议的 CSD 寄存器内容,来自官方手册: 单片机如何确定当前的 SD 卡遵循 V2.0 协议 CSD 寄存器为 128 个位,即 16 个字节.通过检测 CSD 寄存器的 ...
- Android之——清理手机SD卡缓存
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47375595 眼下,市场上非常多Android手机软件都具有清理SD卡缓存的功能, ...
随机推荐
- Qt实现应用程序单实例运行--LocalServer方式
使Qt应用程序能够单实例运行的典型实现方法是使用共享内存实现.该方法实现简单,代码简洁. 但有一个致命缺陷:共享内存(QSharedMemory)实现的单程序运行,当运行环境是UNIX时,并且程序不幸 ...
- Codeforces 27E. Number With The Given Amount Of Divisors (暴力)
题目链接:http://codeforces.com/problemset/problem/27/E 暴力 //#pragma comment(linker, "/STACK:1024000 ...
- Win8制作和使用恢复盘
制作和使用恢复盘要制作恢复盘,请执行以下操作:注:确保计算机连接到交流电源.1. 将指针移至屏幕的右上角或右下角以显示超级按钮,然后单击搜索.2. 根据操作系统的不同,执行以下某项操作:• 在 Win ...
- Web CORS 跨域方式使用方式
CORS 参考 http://enable-cors.org/index.html https://help.aliyun.com/document_detail/oss/practice/cors_ ...
- [hihoCoder]#1039 : 字符消除
Description 小Hi最近在玩一个字符消除游戏.给定一个只包含大写字母"ABC"的字符串s,消除过程是如下进行的: 1)如果s包含长度超过1的由相同字母组成的子串,那么这些 ...
- c#委托把方法当成参数
//定义委托,它定义了可以代表的方法的类型 public delegate void GreetingDelegate(string name); /// <summary> /// 用英 ...
- 获取oracle 表字段,表名,以及主键之类等等的信息
数据库版本号:select * from v$version 数据库名:select * from v$instance 注意: 我在C#项目中查询语句的时候报“ORA-00911: 无效字符” 的错 ...
- C++的优秀特性1:引用
(转载请注明原创于潘多拉盒子) 一本典型的C语言教科书的厚度大约是200页左右,而一本典型的C++教科书的厚度至少要500页.比如K&R的<The C Programming Langu ...
- 通过RDB还原用户误删除的邮件
1.在任意一台邮箱服务器上新建RDB数据库目录:C:\rdb01 2.使用Windows Server Backup还原已备份的邮件数据(mbdb02)库到 C:\rdb01 目录下 3.创建RDB数 ...
- cookie标准话
php设置cookie setcookie( * * ,'/'); setcookie( * * ,'/'); //清除cookie setcookie("loginname",' ...