文档章节

android 下的内存状态获取

A
 Angels_安杰
发布于 2015/10/08 00:22
字数 188
阅读 20
收藏 0



import java.io.File;


import android.app.Activity;

import android.os.Bundle;

import android.os.Environment;

import android.os.StatFs;

import android.text.format.Formatter;

import android.view.View;

import android.widget.TextView;


public class MainActivity extends Activity {


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

TextView tvMemoryInfo = (TextView) findViewById(R.id.tv_memory_info);

// 获得sd卡的内存状态

File sdcardFileDir = Environment.getExternalStorageDirectory();

String sdcardMemory = getMemoryInfo(sdcardFileDir);

// 获得手机内部存储控件的状态

File dataFileDir = Environment.getDataDirectory();

String dataMemory = getMemoryInfo(dataFileDir);

tvMemoryInfo.setText("SD卡: " + sdcardMemory + "\n手机内部: " + dataMemory);

}


/**

* 根据路径获取内存状态

* @param path

* @return

*/

private String getMemoryInfo(File path) {

// 获得一个磁盘状态对象

        StatFs stat = new StatFs(path.getPath());

        

        long blockSize = stat.getBlockSize(); // 获得一个扇区的大小

        

        long totalBlocks = stat.getBlockCount(); // 获得扇区的总数

        

        long availableBlocks = stat.getAvailableBlocks(); // 获得可用的扇区数量

        

        // 总空间

        String totalMemory =  Formatter.formatFileSize(this, totalBlocks * blockSize);

        // 可用空间

        String availableMemory = Formatter.formatFileSize(this, availableBlocks * blockSize);

return "总空间: " + totalMemory + "\n可用空间: " + availableMemory;

}

}


本文转载自:

A
粉丝 5
博文 141
码字总数 108811
作品 0
广州
程序员
私信 提问
Activity的创建、生命周期

Activity是Android四大组件之一。一个Activity负责管理一个界面。 创建一个Activity: New -> Activity -> 选择要创建的Activity类型(一般我们选Basic Activity) AS会自动在AndroidManife...

chenhongyong
05/16
0
0
如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?

如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态 当一个Activity被pause或者stop的时候,这个Activity的对象实际上还是保存在内存中,因此这个Activity中的信息(...

带梦想一7飞
2013/05/13
1K
0
Android中Context

Context字面意思上下文,位于framework package的android.content.Context中,其实该类为LONG型,类似Win32中的Handle句柄,很多方法需要通过 Context才能识别调用者的实例,比如说Toast的第...

Airship
2015/03/27
31
0
如何通过命令行查看Android手机的Activtiy堆栈信息和手机分辨率

查看 activity 栈的状态: adb shell dumpsys activity Android has an interesting command called dumpsys to dump some system information. Even described on adb manual I think that ......

beijing_zbs
2015/02/27
546
0
android Activity 生命周期

1、返回栈(Back Stack) 栈的特点为先进后出 Android使用task来管理Activity。一个task就是一组放在栈里的Activity的集合。这个栈也叫做返回栈(Back Stack) 系统总是会显示处于栈顶的Act...

西米小娅
2018/09/18
10
1

没有更多内容

加载失败,请刷新页面

加载更多

centos 查看删除旧内核

1、查看系统中安装的内核 $ yum list installed | grep kernel 2、删除系统中旧内核 $ yum install yum-utils$ package-cleanup --oldkernels --count=2...

编程老陆
今天
10
0
ES6

ES6:不改变原理的基础上,让API变得更简单 一、let:代替var用于声明变量 1、var的缺点: (1)声明提前 (2)没有块级作用域 2、let的优点: (1)组织了申明提前 (2)让let所在的块({}),...

wytao1995
今天
3
0
kubernetes 环境搭建 —— minikube

创建集群 minikube start 搭建好 k8s 集群后,可以查看集群的状态以及部署应用。主要用到的是 k8s 的 api,这通常需借助于 kutectl 命令行工具 基本操作 kubectl versionkubectl cluster-i...

lemos
今天
11
0
关于js混淆与反混淆还原操作

使用js的混淆加密,其目的是为了保护我们的前端代码逻辑,对应一些搞技术吃饭的公司来说,为了防止被竞争对手抓取或使用自己的代码,就会考虑如何加密,或者混淆js来达到代码保护。 1、为什么...

开源oschina
今天
12
0
用盛金公式解三次方程(ansi c版)

/* cc cubic.c -lm gcc cubic.c -lm Shengjin's Formulas Univariate cubic equation aX ^ 3 + bX ^ 2 + cX + d = 0, (a, b, c, d < R, and a!= 0). Multiple root disc......

wangxuwei
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部