android手机存储空间划分及压图路径选取

通过360手机助手图示,我们可以很清楚地看到整个手机存储空间分成三块:

各目录结构图如下:

通过手机自身查看,如图:

  图中的16G指的是:system分区+cache分区+recovery分区+data分区+sdcard(内置sd卡)分区加起来16GB

三者之间的关系:

安装程序到手机或sd卡,都是将程序分成两部分安装,一部分在“系统文件盘”建立一个程序的第一部分,再在内置或外置sd卡上建立程序的第二部分,所以说360手机卫士的安装程序到手机或者sd卡选项,

指的是程序的第二部分的存放位置,第一部分永远在“系统文件盘”。程序只能安装在 data分区或者是sdcard分区    外置SD卡不能用来安装程序(前提是你有内置SD卡,如果你没有内置SD卡,那么外置SD卡就是sdcard分区),只能存放一些文件,如图片,音乐 ,视频等。系统空间一般连电脑上看不到 ,通过360等程序可看到。

我们的程序使用到两部分空间:一个是系统空间中的data文件目录,通过getFileDir方法获取。一个是内置SD卡空间通过Environment.getExternalStorageDirectory(),下面进行分别验证。

1、验证系统空间:我们的程序通过getFileDir方法来获取路径/data/data/com.example.testwebview/files,这个路径对应的是系统空间中的data目录。

我们做demo可获取Environment.getDataDirectory()目录对应的存储空间的剩余大小为128M,对应系统空间的剩余容量,如图示红圈标注

2、验证内置 SD卡空间。

我们的程序通过Environment.getExternalStorageDirectory()方法获取路径/storage/emulated/0,这个路径对应的就是内置SD卡的路径。只不过系统空间持有内置SD卡的映射。

我们做demo可获取Environment.getExternalStorageDirectory()目录对应的存储空间的剩余大小为107M,能够对应SD卡的剩余容量,如图示红圈标注

关于Environment.getExternalStorageDirectory()方法,我们看一下官方文档的解释,可详细看红色标识的部分

可见,用此方法获取的存储路径是内置存储器(内置SD卡),这种存储器区别于受保护的内部存储空间(系统空间)

我们2.9的程序是这样的流程,

实际上这样也不太合理,因为系统空间中包括内置SD卡的空间,所以合理的的压图流程应为:

时间: 2024-08-11 18:14:00

android手机存储空间划分及压图路径选取的相关文章

录制Android手机操作,转换为Gif图

经常在别人的博客上有看到他们使用一些动态图片来展示自己的项目运行效果.那么,关于屏幕录制与生成 Gif 图要如何操作呢? 之前想着是不是用**等手机软件录制手机屏幕,然后利用**等播放器截取视频 gif 图.不过这些屏幕录制的一般都带水印.后面有找到方法,说 Android Studio 工具可以对 Android 4.4 以上的手机系统进行屏幕录制,工具真的是高大上啊!那么看一下具体操作: 1. 找到 Android Studio 工具的下方的 Terminal 区域.发现它其实和 Windo

[转]仿91助手的PC与android手机通讯

仿91助手的PC与android手机通讯 原文 知道91助手和豌豆莢吧? 说到这两个东西,最让人好奇的应该是就是和手机的交互了.我之前有研究过电脑和安卓的交互,基本功能已经走通了,在这里我想分享一下. 初初看这个问题觉得很简单,然后如果你有点计算机基础的话深入想一下却发现有很多实现上的空白. ---------------------------------------------------------上面是废话,进入正题. 检测设备插入 检测是否是手机 检测是否已经安装驱动 自动安装手机驱动

Android手机自带内部存储路径的获取 (转)

转自:http://my.oschina.net/liucundong/blog/288183 我有一台中兴的Android手机,型号是 ZTE U930HD,手机没有插入外置SD卡(也就是Micro SD Card,原名Trans-flash Card(TF卡),2004年正式更名为Micro SD Card),但是机身自带了一个内置存储卡(也就是eMMC存储,大小为2G). 我把这个手机用数据线插到电脑上,也会看到盘符,通过安装「R.E 管理器」等文件管理应用,也可以管理文件,并且能看到该存

(转)获取android手机内部存储空间和外部存储空间的参数 && 如何决定一个apk的安装位置

转:http://blog.csdn.net/zhandoushi1982/article/details/8560233 获取android文件系统的信息,需要Environment类和StatFs类的支持. (1)Environment 是一个提供访问环境变量的类,常用的方法有: A,getRootDirectory() ,返回File,获取Android 的根目录. B,getDataDirectory() ,返回File ,获取Android 数据目录. C,getExternalSto

Android手机开发(一)

<Android核心分析>整理如下:(看到好文章就忍不住想分享给大家) 1. 方法论探讨之设计意图 为什么要研究Android,是因为它够庞大,它够复杂,他激起了我作为一个程序员的内心的渴望,渴望理解这种复杂性.我研究的对象是作为手机开发平台的Android软件系统部分,而不是Dalvik虚拟机本身. 作为一个从其他平台装接过来的程序员,要从事Andoid平台系统开发,我的关于手机平台上积累的知识已经不能满足需要了,Android为我们带来了大量的新名词,Activity,Manifest,I

Android手机如何获取power_profile.xml文件

最近在做关于能耗方面的测试,看了一个月时间的论文,终于找到了一些新的思路,但是一个问题出现了,以至于 工作无法再进行下去. 在Android手机中,对于手机中的每个部件(cpu.led.gps.3g等等)运行时对应的能耗值都放power_profile.xml 文件中,而且系统的 设置-->电池-->使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数 的.Android手机如何获取power_profile.xml文件呢?接下来我们会详细介绍该问题

搭建Android手机系统开发环境(转)

Android作为近来表现十分强劲的手机操作系统,越来越受到开发人员的青睐,本篇文章将带领大家从零开始打造属于自己的开发环境. 一.JDK下载安装 JDK全称是Java Development Kit,它是Java的核心,同时也是搭建Java环境的最基本要素,注意它与JRE(Java Runtime Environment)的区别,后者是Java的运行环境,另外JDK包含JRE,但同时JDK还包含其它一些工具的集合以及Java的基础类库,对于.NET开发人员来说这就有点像.NET Framewo

unity3d 在android手机内读取assets目录内的资源

Unity3d版本(v4.6.3) android手机内读取包内文件只能使用www的方式, 文件协议为 "jar:file://" + Application.dataPath + "!/assets/" 1.必须有jar:开头 2.assets前有个!不能丢 3.目录路径分隔符不能有 \ 4.由于读取只能使用www的方式,故同时导致无法对assets内的文件进行遍历,若涉及到需要把资源拷贝到本地目录,则只能写一个记录文件,通常为一个文件名一行,如: aaa/bbb

探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法

前言相信这样一个问题,大家都不会陌生,“有什么的方法可以使Android的程序APK不用安装,而能够直接启动”.发现最后的结局都是不能实现这个美好的愿望,而腾讯Android手机游戏平台却又能实现这个功能,下载的连连看,五子棋都没有安装过程,但是都能直接运行,这其中到底有什么“玄机”呢,也有热心童鞋问过我这个问题,本文就为大家来揭开这个谜团.实践我实现了一个小小的Demo,麻雀虽小五脏俱全,为了突出原理,我就尽量简化了程序,通过这个实例来让大家明白后台的工作原理.下载demo的apk程序apks