Android文件存储常用Api和对应存储位置

news/2024/11/24 13:21:35/

防止经常要用的时候记不住在哪个文件夹,要再去一一百度很麻烦,一次性测完了整理放在这里。

注:测试时的Android版本是12,如果实际地址不同可以用下面的测试代码自行重新看一遍。

Api对应文件夹目录说明
应用安装位置data/data/包名只有debug的包才能点进去看内部文件
getExternalFilesDir()/storage/emulated/0/Android/data/包名/files一般来说都用这个,后面再加上文件夹将你自己要存的文件分类
getExternalFilesDirs()/storage/emulated/0/Android/data/包名/files上面那个方法的复数版本,会返回所有符合要求的地址,demo里面两者返回相同
getExternalFilesDir(Environment.DIRECTORY_MUSIC)/storage/emulated/0/Android/data/包名/files/music同上,入参还有很多能填的,具体看Environment类的对应常量
getExternalCacheDirs()/storage/emulated/0/Android/data/包名/cache
getDataDir()/data/user/0/包名
getFilesDir()/data/user/0/包名/files

代码(请随便整个测试按钮然后调用入口方法):

public class ContextFileUtils {private static final String TAG = "FileUtils";public static void printContextFile(Context context) {if (context == null) {Log.e(TAG, "printContextFile: null Context!!!");return;}printFilesPath(context.getExternalFilesDirs(null), "getExternalFilesDirs");printFilePath(context.getExternalFilesDir(null), "getExternalFilesDir");printFilesPath(context.getExternalFilesDirs(Environment.DIRECTORY_MUSIC), "getExternalFilesDirs, DIRECTORY_MUSIC");printFilesPath(context.getExternalFilesDirs(Environment.DIRECTORY_PICTURES), "getExternalFilesDirs, DIRECTORY_PICTURES");printFilesPath(context.getExternalCacheDirs(), "getExternalCacheDirs");printFilePath(context.getExternalCacheDir(), "getExternalCacheDir");printFilePath(context.getDataDir(), "getDataDir");printFilePath(context.getFilesDir(), "getFilesDir");}private static void printFilesPath(File[] files, String msg) {if (files == null) {return;}for (File file : files) {printFilePath(file, msg);}}private static void printFilePath(File file, String msg) {if (file != null) {Log.i(TAG, msg + ": " + file.getAbsolutePath());}}
}

http://www.ppmy.cn/news/701385.html

相关文章

HBase(17):表空间设计之数据压缩

1 压缩算法 在HBase可以使用多种压缩编码,包括LZO、SNAPPY、GZIP。只在硬盘压缩,内存中或者网络传输中没有压缩。 压缩算法压缩后占比压缩解压缩GZIP13.4%21 MB/s118 MB/sLZO20.5%135 MB/s410 MB/sZippy/Snappy22.2%172 MB/s409 MB/sGZIP的压缩率最高,但是其实CPU密集型的,…

MATLAB里conv(x1,x2)函数使用注意事项

MATLAB提供卷积运算的函数,一维信号卷积函数是conv(x1,x2),其中x1和x2分别是参与卷积的两个信号。 如果x1和x2是连续函数,那么在表达这两个信号的时候,需要一个采样的过程,举例:t10:0.01:1,x1fu…

微信小程序搜索

js: data: { // 数据源 source:[ "vivo x7", "vivo x9", "vivo x21", "vivo s7", "vivo s9", "vivo s21", "vivo s29" ], // 搜索结果 ret:[], // 延时标识 timer:null }, // 输入搜索词 searc…

python做一个销售管理系统_python实现手机销售管理系统

本文实例为大家分享了python实现手机销售管理系统的具体代码,供大家参考,具体内容如下 要求如下: 手机销售系统 手机品牌 手机价格 库存数量 vivoX9 2798 25 iphone7(32G) 4888 31 iphone7(128G) …

回归-多项式回归

1、什么是多项式回归 线性回归适用于数据呈线性分布的回归问题.如果数据样本呈明显非线性分布,线性回归模型就不再适用(下图左),而采用多项式回归可能更好(下图右).例如: 2、模型定义 与线性模…

Python手机销售系统

手机销售系统手机品牌 手机价格 库存数量vivoX9 2798 25iphone7(32G) 4888 31iphone7(128G) 5668 22iphone7P(128G) 6616 29iphone6(16G) 3858 14............ 功能要求:四个选项:1.查看所有手机品牌1.vivoX92.iphon…

Python数据拟合:线性、多项式和对数拟合

Python数据拟合:线性、多项式和对数拟合 在数据分析中,拟合是一种常用的方法,可以通过将数据点与一个特定类型的函数进行匹配来预测未来的趋势。Python提供了多种拟合方法,包括线性、多项式和对数拟合。 一. 线性拟合 线性拟合是将数据点拟合成一条直线的过程。在Python…

基于python的-手机销售系统

# 手机销售系统 # 手机品牌 手机价格 库存数量 # vivoX9 2798 25 # iphone7(32G) 4888 31 # iphone7(128G) 5668 22 # iphone7P(128G) 6616 29 # iphone6(16G) 3858 14 # .... # ..…