Android Environment类的接口详解

android中的Environment的使用说明 android中的Environment的使用说明,讲解了此类的大部分函数的使用和变量的说明 立即下载

Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态,
并且需要在AndroidManifest.xml文件中添加外部存储读和写的权限。
Environment类中提供了几个静态常量用于标识外部存储的状态,这些状态都是String类型
MEDIA_BAD_REMOVAL 在没有挂载前存储媒体已经被移除。
MEDIA_CHECKING 正在检查存储媒体。
MEDIA_MOUNTED 存储媒体已经挂载,并且挂载点可读/写。
MEDIA_MOUNTED_READ_ONLY 存储媒体已经挂载,挂载点只读。
MEDIA_NOFS 存储媒体是空白或是不支持的文件系统。
MEDIA_REMOVED 存储媒体被移除。
MEDIA_SHARED 存储媒体正在通过USB共享。
MEDIA_UNMOUNTABLE 存储媒体无法挂载。
MEDIA_UNMOUNTED 存储媒体没有挂载。
可以通过静态方法getExternalStorageState()来获取外部存储的状态,如果程序需要在外部存储里面读写数据,必须要先判断:

if(Environment.MEDIA_MOUNTED.equals(
Environment.getExternalStorageState()) 
|| !Environment.isExternalStorageRemovable())

然后,添加外部存储读和写的权限:

    
    

在Environment中还提供了Android标准目录的路径,以String类型提供。
DIRECTORY_ALARMS 系统提醒铃声存放的标准目录。
DIRECTORY_DCIM 相机拍摄照片和视频的标准目录。
DIRECTORY_DOWNLOADS  下载 的标准目录。
DIRECTORY_MOVIES 电影存放的标准目录。
DIRECTORY_MUSIC 音乐存放的标准目录。
DIRECTORY_NOTIFICATIONS 系统通知铃声存放的标准目录。
DIRECTORY_PICTURES 图片存放的标准目录
DIRECTORY_PODCASTS 系统广播存放的标准目录。
DIRECTORY_RINGTONES 系统铃声存放的标准目录。

static File getDataDirectory() 获得data的目录(/data)。
static File getDownloadCacheDirectory() 获得下载缓存目录。(/cache)
static File getExternalStorageDirectory() 获得外部存储媒体目录。(/mnt/sdcard or /storage/sdcard0)
static File getRootDirectory() 获得系统主目录(/system)

除了用Environment获取存储目录之外,还可以通过把路径写死的方式,比如要读取外部存储/mnt/sdcard目录下的文件,可以在程序中直接用全路径,
但是这样做是很不好的,应该Android实在是太开放了,外部存储的目录的什么还是要固件制作商才知道,但是有一点是毋庸置疑的,就是Android框架层里面
已经是指定好了Environment.getDownloadCacheDirectory()的返回路径。所以,尽量用这种方式来获取和存储数据,以免固件厂商不同而造成路径的差异。

Android的实际开发中还用了两个非常重要的缓存目录,一个是应用程序自己的缓存空间,另一个是外部存储为该应该程序提供的缓存空间。有什么差别?
使用过LruCache和DisLruCache的童鞋应该知道。
这两个方法是通过上下文对象Context获取的,只要应用程序被卸载,这两个目录下的文件都要被清空。
context.getCacheDir() 获取应用程序自己的缓存目录
context.getExternalCacheDir() 获取应用程序在外部存储的存储目录
百度无人车ApolloAuto使用入门 1.安装原版ubuntu 14.04 http://www.ubuntu.org.cn/download/alternative-downloads 2.安装对应ubuntu 14.04的indigo版ROS http://wiki.ros.org/indigo/Installation/Ubuntu 3.安装Apollo Kernel https://github.co 阅读详情

相关推荐

ndnSIM学习笔记(一)

在接下来的一段时间要用ndnSIM来做自己的仿真网络,需要系统的学习相关内容,以下为内容记录。1.安装      1.1核心依赖(必需的)             • python >= 2.6             • libsqlite3             • libcrypto++             • pkg-config             • Boost lib...

gaonjzzz的博客 2985

Environment类的方法与常量

Environment类中提供了几个静态常量用于标识外部存储的状态,这些状态都是String类型: MEDIA_BAD_REMOVAL //在没有挂载前存储媒体已经被移除。 MEDIA_CHECKING //正在检查存储媒体。 MEDIA_MOUNTED //存储媒体已经挂载,并且挂载点可读/写。 MEDIA_MOUNTED_READ_ONLY //存储媒体已经挂载,挂载点只...

ykqidev的博客 1028

USB2.0基础知识总结

目录 1、协议层: 1.1、域分类 1.2 、USB传输方式: 1、协议层: 域和包定义:包是一次传输的单位,每个包由多个域组成; USB中是按照LSB进行字节传输; 1.1、域分类 1.1.1: 同步域(SYNC field) 所有的包都开始于同步域,在低速和全速通信中SYNC field用7个0和1个1来表示。 由于USB2.0使用了NRZI编码(0用翻转来表示,1用不翻转表示),所以00000001就是上图那样。 ...

qq_32938605的博客 4408

Android Environment类

1. 外部存储状态 通过静态方法Environment.getExternalStorageState()来获取外部存储状态。 字段 含义 Environment.MEDIA_REMOVED 存储媒体被移除 Environment.MEDIA_UNMOUNTED 存储媒体没有挂载 Environment.MEDIA_CHECKING 正在检查存储媒体 Environme...

假装你是大灰狼的专栏 1344

MATLAB新手必看:SVPWM七段式算法仿真全流程解析(附完整代码)

本文为MATLAB新手和电机控制初学者提供了SVPWM七段式算法的完整仿真与代码实现指南。文章详细解析了从扇区判断、矢量作用时间计算到PWM波形生成的全流程,并附带了可直接运行的MATLAB代码,帮助读者在理解FOC控制核心算法的基础上,快速掌握工程仿真与调试技巧。

weixin_29074295的博客 281

Ubuntu升级遇到grub-efi-amd64-signed安装失败?3步搞定这个烦人错误

本文深度解析Ubuntu系统升级时grub-efi-amd64-signed安装失败并提示“cannot find EFI directory”错误的根本原因。该错误通常由EFI系统分区挂载异常、BIOS/UEFI引导模式不匹配或dpkg包状态死锁导致。文章提供了三步精准修复流程:首先检查并修复ESP分区挂载,其次处理dpkg依赖问题,最后针对传统BIOS系统提供适配方案,帮助用户安全彻底地解决这一常见升级难题。

r7s8t的博客 398

android外部存储规范,Android存储访问与Environment类

1. Environment类中提供了几个静态常量用于标识外部存储的状态,这些状态都是String类型:. MEDIA_BAD_REMOVAL 在没有挂载前存储媒体已经被移除。. MEDIA_CHECKING 正在检查存储媒体。. MEDIA_MOUNTED 存储媒体已经挂载,并且挂载点可读/写。. MEDIA_MOUNTED_READ_ON...

weixin_29547681的博客 570

2.0 电子凸轮 西门子1500电子凸轮使用研究1

本文研究了S7-1500T电子凸轮同步控制技术,通过仿真实验得出以下结论:1)通过比例系数可调整凸轮曲线形状;2)解除同步需调用从轴其他运动指令;3)详细阐述了凸轮同步的5个实施步骤。重点分析了三种同步类型(主值距离同步、动态参数同步和直接同步)的特点及应用场景,并探讨了缩放系数、偏移量等参数对凸轮曲线的影响。同时介绍了凸轮应用模式及常见异常处理方法,为工程应用提供了重要参考。

qq_34047402的博客 809

SpringBoot中利用Environment给静态变量赋值配置文件中的常量

之前在公司做业务开发的时候有个需求,需要给工具类中静态变量赋值为application.yml中记录的常量,稍微花了点功夫,也踩了点坑,所以在此做个记录。 配置文件 配置文件中的常量如下: internal: aes: key: ${AES_KEY:testkey} iv: ${AES_IV:testiv} @Value()注解 一般情况下,我们使用@Value()注解即可给变量赋值成我们指定key的值,例如: @Value("${internal.aes.key}") private

lisijing8201的博客 2305

基于STM32L4XX、HAL库的RTL8201F 以太网收发器(PHY)驱动程序设计

define PHY_RESET_DELAY 1000 // PHY复位延迟(ms)#define PHY_AUTONEGO_DELAY 3000 // 自动协商延迟(ms)/* 检查PHY ID (RTL8201F的ID为0x001CC816) *//* 系统时钟配置,确保ETH有50MHz时钟 *//* 初始化CPU, AHB和APB总线时钟 */

zhusl6688的博客 806

华为MetaERP的交易计税模块(即“税务引擎”)在设计上确实受到Oracle E-Business Tax(EBTax)等国际先进税务架构理念的影响,但结合了华为自身全球化运营、多准则合规、高并发处

华为MetaERP税务引擎在借鉴Oracle EBTax三层架构基础上,创新升级为五层智能税务架构,实现从"税码驱动"到"场景+规则+AI驱动"的转变。该模块采用云原生微服务架构,支持全球190+国家税务规则动态加载,具备实时计税、多准则并行处理、AI风险预警等核心能力,深度适配金税工程等国内合规要求。通过税务数字孪生、RPA机器人等创新,形成自主可控的智能税务中枢,为跨国企业提供全栈国产化税务解决方案,重新定义ERP税务管理范式。

金牌架构师 114

Android开发:Environment类的接口详解

Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态, 并且需要在AndroidManifest.xml文件中添加外部存储读和写的权限。 Environment类中提供了几个静态常量用于标识外部存储的状态,这些状态都是String类型 MEDIA_BAD_REMOVAL 在没有挂载前存储媒体已

AFull的博客 2723

2026 蓝牙技术趋势展望:信道探测、Auracast、高吞吐 HID 与 AI 融合引领行业变革

蓝牙技术2026年展望:信道探测、Auracast广播音频和AI融合将引领创新。蓝牙信道探测技术将实现亚米级精确定位,在工业资产追踪和汽车数字钥匙领域大显身手。Auracast广播音频将持续拓展公共场所应用,提升音频包容性体验。高数据吞吐量和超低延迟功能将支持AR/VR等新兴场景。AI与蓝牙的深度融合将推动可穿戴设备智能化发展,实现实时健康监测和个性化音频服务。蓝牙技术凭借其多功能性和创新力,正成为连接万物的关键技术,持续推动行业变革和生活品质提升。

专业开发者的博客,一个从事Android WiFi和蓝牙的工程师 113

Android开发:Environment类(外部存储状态及路径获取)的接口详解

转载自:https://blog.youkuaiyun.com/daniel80110_1020/article/details/55504833Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态,并且需要在AndroidManifest.xml文件中添加外部存储读和写的权限。Environment类...

FDGFGFDGFD的博客 6364

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Android 中关于Environment类的总结

Environment类是一个提供访问环境变量的类。1、getExternalStorageState() 方法,返回String 获取外部存储设备的当前状态。返回值如下表返回值说明Environment.MEDIA_BAD_REMOVAL 表明SDCard 被卸载前己被移除 Environment.MEDIA_CHECKING 表明对象正在磁盘检查。 Environment.MEDIA_MOUN...

IT界寿险规划师的博客 8918

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Android -- Environment类

1、讲述 Environment 类 Environment 是一个提供访问环境变量的类。 Environment 包含常量: MEDIA_BAD_REMOVAL 解释:返回getExternalStorageState() ,表明SDCard 被卸载前己被移除 MEDIA_CHECKING 解释:返回getExternalStorageState() ,表明对象正在磁盘检查。 MEDIA_M

得之我幸--失之我命 2071

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Android的Environment类简介

1、讲述 Environment 类  Environment 是一个提供访问环境变量的类。   Environment 包含常量:  MEDIA_BAD_REMOVAL  解释:返回getExternalStorageState() ,表明SDCard 被卸载前己被移除  MEDIA_CHECKING  解释:返回getExternalStorageState() ,表

djpraul的专栏 939

android的Environment类

1、讲述 Environment 类  Environment 是一个提供访问环境变量的类。  Environment 包含常量:  MEDIA_BAD_REMOVAL  解释:返回getExternalStorageState() ,表明SDCard 被卸载前己被移除  MEDIA_CHECKING  解释:返回getExternalStorageState() ,表明对象正在磁盘检

GG之家 771

Android Environment 类详解

Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态, 并且需要在AndroidManifest.xml文件中添加外部存储读和写的权限。 根据官方API文档,接下来对android.os.Environment类做详细介绍。 一、Environment类中提供了多个String类型的静态常量用

向晚流年 1506

android中的Environment 类 简介

1、讲述 Environment 类  Environment 是一个提供访问环境变量的类。   Environment 包含常量:  MEDIA_BAD_REMOVAL  解释:返回getExternalStorageState() ,表明SDCard 被卸载前己被移除  MEDIA_CHECKING  解释:返回getExternalStorageState() ,表

freemind 670

java中的Environment类

本文出处为:https://blog.youkuaiyun.com/blogxiaofei/article/details/8003491 本文目的完全是参考交流学习,一起学习java编程,以下是上述链接的全文内容,若有转载请标注原文的出处,即上面的链接。 Environment是一个提供访问环境变量的类。 Environment包含常量: MEDIA_BAD_REMOVAL 解释:返回get...

weixin_41796049的博客 1万+
上一篇: Retrofit+okhttp网络框架介绍
下一篇: Android textview改变部分文字的颜色和string.xml中文字的替换
Ray534
博客等级 码龄12年 2粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值