Android 文件存储(一)Environment
来源:互联网 发布:mac用户名修改 编辑:程序博客网 时间:2024/06/02 02:50
1、常量
//与Environment.getExternalStorageState();返回的状态进行比较
String MEDIA_BAD_REMOVAL//SDCard卸载之前被删除时的存储状态。String MEDIA_CHECKING//如果SDCard存在并进行磁盘检查。String MEDIA_MOUNTED//如果SDCard存在,并在其安装读/写访问。String MEDIA_MOUNTED_READ_ONLY//表明对象权限为只读String MEDIA_NOFS//如果SDCard存在,但是为空,或正在使用不受支持的文件系统。String MEDIA_REMOVED//SDCard 不存在String MEDIA_SHARED//如果 SDCard 未安装 ,并通过 USB 大容量存储共享 String MEDIA_UNMOUNTABLE// 未知的存储状态,例如路径不支持String MEDIA_UNMOUNTED// SDCard 如果介质存在但无法安装存储状态。通常,如果介质上的文件系统损坏,则会发生这种情况。
比如判断SD卡是否存在,存在则获取sd卡路径:
public String getSDPath() { File sdDir = null; boolean sdCardExist = Environment.getExternalStorageState() .equals(android.os.Environment.MEDIA_MOUNTED); if (sdCardExist) { sdDir = Environment.getExternalStorageDirectory(); } return sdDir.toString(); }
2、领域
public static String DIRECTORY_ALARMS//系统提醒铃声存放的标准目录。public static String DIRECTORY_DCIM//相机拍摄照片和视频的标准目录。public static String DIRECTORY_DOWNLOADS//下载的标准目录。public static String DIRECTORY_MOVIES//电影存放的标准目录。public static String DIRECTORY_MUSIC//音乐存放的标准目录。public static String DIRECTORY_NOTIFICATIONS//系统通知铃声存放的标准目录。public static String DIRECTORY_PICTURES//图片存放的标准目录。public static String DIRECTORY_PODCASTS//系统广播存放的标准目录。public static String DIRECTORY_RINGTONES//系统铃声存放的标准目录。
3、方法
//Android data的目录 String dataPath = Environment.getDataDirectory().getPath(); //返回下载/缓存内容目录 String download = Environment.getDownloadCacheDirectory().getPath(); //获取Android根目录 String rootDirectory = Environment.getRootDirectory().getPath(); //返回主外部存储目录 String storageDirectory = Environment.getExternalStorageDirectory().getPath(); //获取顶级公共外部存储目录,以放置特定类型的文件 File storagePublicDirectory = Environment.getExternalStoragePublicDirectory(""); //返回主“外部”存储设备的当前状态。 String StorageState = Environment.getExternalStorageState(); //是否有外部存储设备。 boolean StorageEmulated = Environment.isExternalStorageEmulated(); //返回主“外部”存储设备是否可移动 boolean storageRemovable = Environment.isExternalStorageRemovable(); Log.v("tag", "dataPath "+dataPath); Log.v("tag", "download "+download); Log.v("tag", "rootDirectory "+rootDirectory); Log.v("tag", "storageDirectory "+storageDirectory); Log.v("tag", "storagePublicDirectory "+storagePublicDirectory); Log.v("tag", "StorageState "+StorageState); Log.v("tag", "StorageEmulated "+StorageEmulated); Log.v("tag", "storageRemovable "+storageRemovable);
打印结果:
dataPath /data download /cache rootDirectory /system storageDirectory /storage/emulated/0 storagePublicDirectory /storage/emulated/0 StorageState mounted StorageEmulated true storageRemovable false
拓展:
别忘了权限 WRITE_EXTERNAL_STORAGE权限,并且从读取访问开始需要 READ_EXTERNAL_STORAGE权限,如果您持有写入权限,该权限将被自动授予。
从开始KITKAT,如果您的应用程序只需要存储内部数据,请考虑使用 getExternalFilesDir(String)或 getExternalCacheDir()不需要读取或写入权限。
0 0
- Android 文件存储(一)Environment
- Android 数据存储(一)文件存储
- Android文件存储(一)
- Android数据存储方式(一)文件
- Android数据存储(一)文件
- Android数据存储方式(一)文件
- Android数据存储方式(一)文件
- Android数据存储之内部文件存储(一)
- Android中的数据存储(一)----- 文件存储
- android Environment 常用方法(获取存储目录)
- Android基础:数据存储(一):文件存储
- Android 数据存储(一)之文件存储
- Android0907<十二>(文件存储,SharePreferences,getCacheDir、Environment,SQLite数据库存储)
- Android之数据存储详解(一)之文件存储和SharedPreferences存储
- Android存储访问与Environment类
- Android数据存储方式(一)文件读写操作
- Android之数据持久化技术一(文件存储)
- Android基础学习笔记---流文件存储(一)
- map和hash_map的区别
- jQuery 只执行一次的事件 one
- nginx负载均衡配置
- reactNative常用插件
- spring与hibernate的集成
- Android 文件存储(一)Environment
- http://www.cnblogs.com/liaojie970/p/5714050.html
- boost中unorder_set使用
- [腾讯云]数据盘分区以及格式化
- 输入框输入手机号并匹配历史记录
- 代码规范
- JAVA-REMINDER-MVC
- 简述合并报表逻辑
- Python tkinter label 更新