qq_33539969
qq_33539969
2020-03-19 16:54
采纳率: 0%
浏览 1.1k

安卓内部存储空间具体有多大?

提问原因:所有文章都说应该使用外部存储空间(因为比较大)。
提问:内部存储空间具体有多小?
设备:小米8SE, 机身内存64G。

已知条件:
内部存储路径:理论上是根目录/data/data/包名/。
用AndroidStudio的设备文件管理器查看确实是根目录/data/data/包名/。
用getCacheDir().getAbsolutePath()打印出的路径是/data/user/0/包名/cache。
这里我就挺奇怪的(data变成了user/0),希望能顺便帮我解答一下。

外部存储路径:理论上是根目录/storage/sdcard/Android/data/包名。
用AndroidStudio的设备文件管理器查看是根目录/sdcard/Android/data/包名(跟理论上的不太一样)。
用getExternalCacheDir().getAbsolutePath()打印出的路径是/storage/emulated/0/Android/data/包名/cache。
反正都不太一样,但也差不多,可能不同手机厂家都有差异。

动手实践:
实践1:已经写代码尝试确实可以在内部存储目录下 新建文件夹 和 文件(图片,视频)。
实践2:StatFs可以计算出内存相关的数据,我的数据是block大小:4096,block数目:12882803,总大小:49GB。
这里也挺奇怪,手机参数写着64G,用这个算出来是49G。
可用的block数目::1781435,剩余空间:6GB

疑问:谁能给个具体的数据,内部存储目录下放多少文件APP就不能运行了(内部空间具体有多小)。

个人理解:linux我不知道,但是Windows是CDE盘在最开始就确定了,比如C盘100GB,D盘500GB。
我觉得安卓不像Windos一样分盘,而是只有一个盘,大家(内部和外部存储)一起用,只是大家路径不一样,比如我现在手机还剩6G空间,我往内部存储里放5个G文件也是可以正常使用的(这是猜测,没有实践, 很可能是错的)。

求大佬讲一下正确的姿势(顺便吐槽一下好多文章都没有刨根问底的态度呢)。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • allenhiman
    allenhiman 2020-05-22 15:17

    我和你观点一致,认为内部外部存储 只是路径不一样,但实际上是公用一个磁盘。 但是我看到过的文章 都说内部存储怎么怎么珍贵,尽量存在外部存储。
    真的是有点晕,我也是windows被逼无奈,要搞一些安卓的事情。 但真的感觉,内部存储就是为了给程序本身用的,程序本身不希望公开的文件就应该存在所谓的内部存储里。
    希望,大神给出结论。
    我认为更确切的说,内部外部存储是公用一个分区。

    点赞 评论

相关推荐