内部存储器与外部存储器的区别

  • 格式:pdf
  • 大小:75.38 KB
  • 文档页数:1

内部存储器与外部存储器的区别

内部存储器与外部存储器的区别:

所有的安卓设备都有外部存储和内部存储,这两个名称来源于安卓的早期设备,那个时候的设备内部存储确实是固定的,⽽外部存储确实是

可以像U盘⼀样移动的。但是在后来的设备中,很多中⾼端机器都将⾃⼰的机⾝存储扩展到了8G以上,他们将存储在概念上分成了”内部internal” 和”外部external” 两部分,但其实都在⼿机内部。所以不管安卓⼿机是否有可移动的sdcard,他们总是有外部存储和内部存储。最

关键的是,我们都是通过相同的api来访问可移动的sdcard或者⼿机⾃带的存储(外部存储)。

外部存储虽然概念上有点复杂,但也很好区分,你把⼿机连接电脑,能被电脑识别的部分就⼀定是外部存储。内部存储器:

Android系统能够直接把⽂件存在设备的内部存储内。默认情况下,保存在内部存储内的⽂件是应⽤程序私有的,其他应⽤程序(或⽤户)是⽆法访问的。当⽤户卸载此应⽤程序时,内部存储的数据会⼀并清除。Shared Preferences和SQLite数据库都是存储在内部存储空间上的。内部存储⼀般⽤Context来获取和操作。

内部存储⼀般保存在“/data/data”⽬录下外部存储器:

使⽤sdcard存储的数据,不限制只有本应⽤访问,任何可以有访问Sdcard权限的应⽤均可以访问,⽽Sdcard相对于设备的内部存储空间⽽⾔,会⼤很多,所以⼀般⽐较⼤的数据,均会存放在外部存储中。

要向外部存储器写⼊数据,你必须在清单⽂件中申请WRITE_EXTERNAL_STORAGE权限

外部存储中的⽂件是可以被⽤户或者其他应⽤程序修改的,有两种类型的⽂件(或者⽬录): .公共⽂件Public files:⽂件是可以被⾃由访问,且⽂件的数据对其他应⽤或者⽤户来说都是由意义的,当应⽤被卸载之

后,其卸载前创建的⽂件仍然保留。⽐如camera应⽤,⽣成的照⽚⼤家都能访问,⽽且camera不在了,照⽚仍然在。

私有⽂件Private files:其实由于是外部存储的原因即是是这种类型的⽂件也能被其他程序访问,只不过⼀个应⽤私有的⽂

件对其他应⽤其实是没有访问价值的(恶意程序除外)。外部存储上,应⽤私有⽂件的价值在于卸载之后,这些⽂件也会被删除。类似于内部存储。

外部存储⼀般保存在“/mnt/sdcard/Android/data/”下。