Android APP存储路径

这篇具有很好参考价值的文章主要介绍了Android APP存储路径。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.APP被安装时系统分配在data分区上的存储路径;
2.APP访问不需要申请权限;APP私有,安全性最高;
3.(非root或非共享UID)其它APP无权访问
4.files和cache的区别:cache存储偏临时性的文件,在系统存储空间紧张时会被系统auto clean,应用设置中“清理缓存”会清理掉cache内文件;
5.APP卸载时或“清理数据”时,此2种路径下的所有文件都会被系统自动清理;

/data/../<packagename>/files/
(对应:Context.getFilesDir())


1.数据文件体积小(KB级别);
2.运行时只能在data区加载的文件(如:动态下载的so库,插件apk或hotfix Dex文件等)
3.安全性要求高的私密性文件;
4.记录方便用户继续使用的历史行为数据,不希望被频繁重置到默认值的数据文件;

/data/../<packagename>/cache/
(对应:Context.getCacheDir())


1.文件体积小(KB级别);
2.被频繁删除或重置后不影响用户历史状态功能的文件;
3.存储数据安全性相对较高,不希望被第三方获取到的临时文件



内置存储卡(或分区)(APP私有存储路径)

1.系统为每个APP分配的基于不可插拔内置存储卡(或分区)的路径;
2.APP私有的在存储卡上的空间,读写不需要特殊权限;
3. 三方应用在获取到存储卡动态权限后可以读写该目录下文件,在存储安全性相比data区要低;
4.files和cache的区别:cache存储偏临时性的文件,在系统存储空间紧张时会被系统auto clean,应用设置中“清理缓存”会清理掉cache内文件;
5.APP卸载时或“清理数据”时,此2种路径下的所有文件都会被系统自动清理;

1.存储体积较大的文件(例如:分发或自动更新的APK,下载的视频类文件,图片,ZIP压缩包等体积较大的文件);
2.存储对安全和隐私性要求不高的文件;

3.没有单独的编辑删除入口,频繁删除或重置后不影响用户历史状态功能的文件放在cache目录中;


<内存储卡根路径>/

Android/data/<packagename>/files/

(对应:Context.getExternalFilesDir())

<内存储卡根路径> /

Android/data/<packagename>/cache/
(对应:Context.getExternalCacheDir())



存储卡非APP私有存储路径

存储卡上非APP私有存储的其它路径(包括内置或可插拔的外置存储卡的非APP私有存储路径)

1.Android 6.0+和部分OEM定制6.0-系统要动态申请存储卡读写权限,用户授权后才能读写;
2.可插拔存储卡被移除后就数据无法访问;

 3.非系统指定的APP私有路径,卸载APP或清除数据时,对应的数据不会被清除,持久性强;

4.放置到公共存储卡上,其实更容易被工具类APP清理缓存时引导用户做清理,

因涉及用户动态权限,卸载APP后无法自动清理干净,一般不建议在此类路径下存储文件,有特殊需求的需要提出来Review审核


SharedPreferences
/data/../<packagename>/shared_prefs/

存储全局性的开关,基类型的键值对数据

Databse

/data/../<packagename>/databases/

存储APP内基于系统Sqlite数据库存储的


Android APP存储路径和缓存清理规范_安卓 app存储文件_沙漠一只雕得儿得儿的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-538824.html

到了这里,关于Android APP存储路径的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android APP 缓存路径

    Context.getCacheDir(): 这个缓存路径打印出来的是:data / data / (APPID ) / cache Android系统中的清除APP缓存清除的就是这个路径: 随着 用户手动清空缓存 或者 APP的卸载 ,这个路径的缓存也会被删除。 请注意 : 在这个缓存路径上读写是 不需要请求文件读写权限的 ,所以在这个路径上

    2024年02月06日
    浏览(23)
  • 《Android Studio开发实战 从零基础到App上线(第3版)》资源下载和内容勘误

    下面是《Android Studio开发实战 从零基础到App上线(第3版)》一书用到的工具和代码资源: 1、本书使用的Android Studio版本为Android Studio Dolphin(小海豚版本),最新的安装包可前往Android官网页面下载。 2、本书使用的Android NDK版本为r23b,最新的安装包可前往Android官网页面下载。

    2023年04月19日
    浏览(108)
  • Android Studio 修改AVD模拟器文件默认存储路径

    AndroidStudio默认的模拟器文件路径为:C:Users用户名.androidavd路径,通常windows系统上,C盘不是太大,而avd文件却不小,通常几个GB,所以有必要将avd路径换到一个非系统盘。 更换方法如下:Help - Edit Custom Properties...  增加一个新的系统变量将覆盖默认值:  保存,重启ide,重

    2024年02月16日
    浏览(52)
  • Android App专属文件(app-specific files)存储

    有很多场景,我们的App需要创建一些其他App不需要访问、不应该访问的文件,系统提供了一下两种App专属(app-specific)存储目录: 指的是:/data/user/0/packagename/…目录 该目录提供两个目录:一个专门存储持久化文件(getFileDir),一个存储缓存文件(getCacheDir)。 此目录其他App无法

    2023年04月26日
    浏览(30)
  • Android开发入门——从零开始构建第一个Android App

    作者:禅与计算机程序设计艺术 首先,让我们回顾一下Android系统的特性。Android是一个开源、免费的移动操作系统,最初起源于Google,后被开源。它提供统一的API,使得手机厂商可以针对不同版本的Android系统定制不同的应用。同时,Android也支持对设备硬件进行二次开发,可

    2024年02月07日
    浏览(43)
  • 基于Android的学生信息管理App设计(Android studio开发)

    目 录 一、 题目选择(题目、选题意义) 3 二、 设计目的 3 1、 初衷 3 2、 结合实际 3 3、 使用工具 3 三、 最终页面效果展示 4 1、 登陆界面 4 2、 主界面 5 3、 各个功能模块 6 四、 各部分设计 11 1、活动页面Activity布局文件 11 2、Activity的编程 13 五、 总结 17 题目:基于Android的

    2024年02月08日
    浏览(86)
  • android studio开发app实例

    以下是一个简单的Android Studio开发App的实例: 1. 打开Android Studio,并创建一个新项目。 2. 选择一个适当的应用程序名称和包名称,然后选择目标API级别和默认Activity的模板。 3. 在MainActivity.java文件中,添加以下代码以配置MainActivity: ``` import android.os.Bundle; import androidx.appcompa

    2024年02月16日
    浏览(40)
  • Android APP开机启动,安卓APP开发自启动,安卓启动后APP自动启动 Android让程序开机自动运行APP

    第一步设置获取广播后的业务 第二查权限给APP 理论以上两步做完就可以了。APP也能收到广播信息了, 但是APP没有在桌面启动。 经过再研究,发现要在手机再设置自动开启等业务,以下是小米、魅族的系统设置的一些内容,其它平台自己研究。 这里已经显示收到广播信息  

    2024年02月06日
    浏览(44)
  • Android毕业设计-------基于 Android 剧院购票APP的开发与设计

    摘要:近年来,随着社会的发展和科技方面的创新,越来越多的人选择使用手机应用程序来购买剧场票。本文将探讨基于 Android 平台的剧院购票应用程序的开发和设计。该应用程序将为用户提供浏览剧场列表、查看剧场详情、选择座位并购买剧场票的功能。在开发方面,我们

    2024年01月24日
    浏览(35)
  • Android 1.2.1 使用Eclipse + ADT + SDK开发Android APP

      这里我们有两条路可以选,直接使用封装好的用于开发Android的ADT Bundle,或者自己进行配置 因为谷歌已经放弃了ADT的更新,官网上也取消的下载链接,这里提供谷歌放弃更新前最新版本的 ADT Bundle供大家下载! 32位版: adt-bundle-windows-x86-20140702.zip(百度网盘) 64位版: adt

    2024年02月09日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包