- 浏览: 189358 次
- 性别:
- 来自: 郑州
最新评论
-
gaoyansansheng:
,第一个方法是全角符转半角符吧?
Android TextView自动换行文字排版参差不齐的原因 -
wyyl1:
牛逼!用第一个方法就行了,简单!
Android TextView自动换行文字排版参差不齐的原因 -
XuNiu:
好内容虽然过了这么久了,但是一定要赞一下
android 命名规范
/** 获取存储卡路径 */ File sdcardDir=Environment.getExternalStorageDirectory(); /** StatFs 看文件系统空间使用情况 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /** Block 的 size*/ Long blockSize=statFs.getBlockSize(); /** 总 Block 数量 */ Long totalBlocks=statFs.getBlockCount(); /** 已使用的 Block 数量 */ Long availableBlocks=statFs.getAvailableBlocks();
<!-- end header -->
java.lang.Object | |
↳ | android.os.Environment |
Class Overview(类概述)
Provides access to environment variables. 提供访问环境变量。
常量
Constants
String
MEDIA_BAD_REMOVAL
getExternalStorageState()
returns MEDIA_BAD_REMOVAL if the media was removed before it was unmounted.
String
MEDIA_CHECKING
getExternalStorageState()
returns MEDIA_CHECKING if the media is present and being disk-checked
String
MEDIA_MOUNTED
getExternalStorageState()
returns MEDIA_MOUNTED if the media is present and mounted at its mount point with read/write access.
String
MEDIA_MOUNTED_READ_ONLY
getExternalStorageState()
returns MEDIA_MOUNTED_READ_ONLY if the media is present and mounted at its mount point with read only access.
String
MEDIA_NOFS
getExternalStorageState()
returns MEDIA_NOFS if the media is present but is blank or is using an unsupported filesystem
String
MEDIA_REMOVED
getExternalStorageState()
returns MEDIA_REMOVED if the media is not present.
String
MEDIA_SHARED
getExternalStorageState()
returns MEDIA_SHARED if the media is present not mounted, and shared via USB mass storage.
String
MEDIA_UNMOUNTABLE
getExternalStorageState()
returns MEDIA_UNMOUNTABLE if the media is present but cannot be mounted.
String
MEDIA_UNMOUNTED
getExternalStorageState()
returns MEDIA_UNMOUNTED if the media is present but not mounted.
Environment() |
<!-- ========== METHOD SUMMARY =========== -->
static File | getDataDirectory() : Gets the Android data directory.获取Android的数据目录。 |
static File | getDownloadCacheDirectory() : Gets the Android Download/Cache content directory.获取的Android下载/缓存内容的目录。 |
static File | getExternalStorageDirectory() :Gets the Android external storage directory.获取Android的外部存储目录。 |
static File | getExternalStoragePublicDirectory(String type) :Get a top-level public external storage directory for placing files of a particular type.获取为特定类型的文件放在顶层的公共外部存储目录。 |
static String | getExternalStorageState() :Gets the current state of the primary "external" storage device.获取的主要“外部”存储设备的当前状态。 |
static File | getRootDirectory() :Gets the Android root directory.获取Android的根目录。 |
static boolean | isExternalStorageEmulated() :Returns whether the device has an external storage device which is emulated.返回设备是否有外部存储设备的仿真。 |
static boolean | isExternalStorageRemovable() :Returns whether the primary "external" storage device is removable.返回主“外部存储设备是否是可拆卸的。 |
public static File getExternalStorageDirectory ()
获取Android的外部存储目录。这个目录可能目前无法访问,如果它已被安装在其计算机上的用户,已被删除从设备,或发生其他一些问题。你可以确定其当前状态 getExternalStorageState()
。
注意:不要被这里的“外部”字混淆。这个目录可以更好地被看作媒体/共享存储。这是一个文件系统,可容纳的数据量相对较大,跨所有应用程序共享(不执行的权限)。传统上,这是一个SD卡,但它也可作为内置存储设备,从受保护的内部存储是不同的,可以在计算机上的文件系统安装在实施。
在与多个“外部”存储目录(如既安全应用程序存储和挂载共享存储)设备中,这个目录表示“小学化”的用户将与外部存储。
应用程序不应该直接使用这个顶级目录,以避免污染用户的根命名空间。任何专用应用程序的文件,这些文件应该被放置在返回目录Context.getExternalFilesDir
,该系统将采取删除,如果应用程序被卸载。其他共享文件应该被放置在一个由返回目录getExternalStoragePublicDirectory(字符串)
。
下面是一个典型的代码,例如监察外部存储的状态:
BroadcastReceiver mExternalStorageReceiver; boolean mExternalStorageAvailable = false; boolean mExternalStorageWriteable = false; void updateExternalStorageState() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { mExternalStorageAvailable = mExternalStorageWriteable = true; } else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) { mExternalStorageAvailable = true; mExternalStorageWriteable = false; } else { mExternalStorageAvailable = mExternalStorageWriteable = false; } handleExternalStorageState(mExternalStorageAvailable, mExternalStorageWriteable); } void startWatchingExternalStorage() { mExternalStorageReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { Log.i("test", "Storage: " + intent.getData()); updateExternalStorageState(); } }; IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_MEDIA_MOUNTED); filter.addAction(Intent.ACTION_MEDIA_REMOVED); registerReceiver(mExternalStorageReceiver, filter); updateExternalStorageState(); } void stopWatchingExternalStorage() { unregisterReceiver(mExternalStorageReceiver); }
发表评论
-
android textview 特出显示
2013-04-22 19:40 1638在xml文件中使用android:textStyle=&qu ... -
反编译apk
2013-02-27 10:42 976工具下载:需用到dex2ja ... -
Android 通过字符串来获取R下面资源的ID 值
2013-01-30 14:33 1202方法一: try{ Field field= ... -
android禁止锁屏保持常亮 .
2012-12-26 11:12 4717在播放video的时候在mediaplayer mMedia ... -
Eclipse开发Android的配置(包括ADT安装,SDK配置)
2012-12-08 12:35 18271. 下载Android SDK htt ... -
android 命名规范
2012-12-03 19:16 4147一、Android编码规范 1.java代码中不出现中文 ... -
div+css命名规范 嫁接android xml命名
2012-12-03 19:13 1094CSS命名规则 头:header 内容:co ... -
android 之 Task Activity .
2012-11-27 20:55 2597首先task包含一个或多个activity,它是安排在一个堆栈 ... -
最本质的多线程:hanlder和message机制:
2012-11-27 19:58 1708Android多线程 作者:陈 ... -
android之多线程工作(一)AsyncTask .
2012-11-27 19:35 1331本文章主要讲解下AsyncTa ... -
Android 重要包描述
2012-10-25 13:21 973在Android中,各种包写成android.* 的方式,重要 ... -
android.os.NetworkOnMainThreadException 异常处理
2012-10-20 15:12 1088android.os.NetworkOnMainThreadE ... -
android textview属性
2012-08-24 16:10 849android:autoLink设置是否当 ... -
GestureDetector.OnDoubleTapListener 和 GestureDetector.OnGestureListener
2012-07-20 21:30 2001android.view.GestureDetector. ... -
Android Google Map API的使用(一)
2012-07-17 20:49 1101Android中定义了一个名为com.google.andro ... -
Android中Context简介
2012-07-15 19:20 10372Context字面意思是上下文,位于framework pac ... -
XmlPullParser
2012-07-06 16:14 10318在Android中,如果要想完成PULL解析处理需要 o ... -
DocumentBuilder API 官方翻译(翻译有错的地方请多指正)
2012-07-04 12:27 1256public abstract class Document ... -
Android开发如何去除标题栏title
2012-07-02 18:18 787Android开发如何去除标题栏title 去除标题栏tit ... -
Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
2012-06-30 17:25 7572今天在写一个小例子时,处了一个错误让我找了一下午,下面是错误代 ...
相关推荐
总的来说,Android获取内外置存储卡的过程涉及多个API和权限管理。开发人员需要注意的是,由于Android系统的碎片化,不同的设备和Android版本可能会有不同的行为,因此在编写相关代码时应考虑兼容性和异常处理。同时...
获取存储卡的总大小和可用空间,可以使用以下代码: ```java File file = new File("/path/to/storage"); // 替换为实际路径 StatFs stat = new StatFs(file.getPath()); long blockSize = stat.getBlockSizeLong();...
在Android系统中,由于安全和隐私的考虑,访问外部存储(即外置SD卡)的权限在...同时,这种方法也可能因Android系统的未来发展而变得不再适用,因此建议在可能的情况下,优先使用官方提供的API和推荐的存储访问策略。
总之,通过反射机制,开发者可以在不依赖特定厂商实现的情况下,获取并管理Android设备上的各种存储路径,包括内置存储、SD卡和OTG设备,同时获取到它们的空间信息,以适应不同的设备环境。在`MountRootManagerRf....
在提供的压缩包文件"获取存储卡路径"中,可能包含了实现上述优化策略的代码示例,如自定义函数来获取不同类型的存储卡路径,或者实现了上述优化技术的文件读取类。通过研究这些代码,开发者可以更好地理解如何在实际...
总的来说,通过反射调用获取Android的内置存储和外部SD卡的根路径是一种应对版本差异的有效手段,但同时也需要对设备的特定情况进行适配。在实际开发中,应遵循最佳实践,尽可能使用官方推荐的API,并确保在请求权...
在Android 6.0(API级别23)及更高版本中,系统对存储访问进行了权限管理,因此获取外置SD卡路径前,需要确保在`AndroidManifest.xml`中添加了相应的权限: ```xml <uses-permission android:name="android....
内部存储是设备自身的存储空间,而外部存储包括SD卡和通过OTG连接的U盘。在Android 6.0(API级别23)及更高版本,用户需要在运行时授予读写外部存储的权限(`Manifest.permission.WRITE_EXTERNAL_STORAGE`和`...
在Android系统中,管理和操作文件,尤其是涉及到SD卡(外置和内置存储卡)的文件操作,是开发者经常面临的一项任务。这篇资料主要探讨的是如何在Android应用中获取SD卡的路径以及计算其存储大小。以下是一些关键知识...
综上所述,获取Android设备的SD卡路径和手机存储路径主要涉及`Environment`类的使用,以及权限管理。在实际开发中,根据设备的不同,可能需要进行额外的兼容性处理,确保应用能在各种设备上正常工作。在提供的`...
Android设备获取存储卡路径的源程序,高于3.2版本时,用getVolumePaths通过反射获取,否则通过System.getenv("SECONDARY_STORAGE")获取,再通过查询剩余空间确定是否插有SD卡
在Android开发中,获取SD卡路径以及查询SDCard内存大小是常见的需求,这对于存储和管理应用程序的数据至关重要。本文将详细讲解如何实现这一功能,并介绍相关的类和方法。 首先,我们来了解一下获取SD卡路径的两种...
本篇文章将主要探讨Android中的内部存储与外部存储之一——SD卡存储的基本概念、特点及其使用方法。 #### 二、Android内部存储 Android内部存储指的是应用自身的私有存储空间,通常位于`/data/data/<package name>...
总结一下,本篇内容涵盖了Android获取SD卡内存空间的基本方法,包括获取存储状态、总空间、可用空间和已用空间,以及如何处理不同的Android版本和权限问题。这些知识对于任何涉及存储管理的Android应用都是必不可少...
标题提到的"Android单图路径获取(华为小米通用)"表明这是一个适用于不同品牌手机(如华为和小米)的解决方案,因为不同厂商的Android系统可能会对存储路径做一些定制化改动。下面我们将深入探讨这一主题。 1. **...
在本篇文章中,我们将深入探讨如何使用一种新颖的方法来获取Android设备上的SD卡路径,这种方法与传统的做法有所不同,最大的特点是无需在AndroidManifest.xml文件中声明额外的权限。 ### 一、背景介绍 在Android...
总之,Android设备的外置SDcard(TF卡)是扩展存储空间的重要途径,获取和管理TF卡涉及编程接口的使用、系统权限的控制以及用户界面的操作。理解这些知识点对于优化Android设备的存储管理和使用体验至关重要。
在Android平台上,获取SD卡...总之,获取SD卡路径和剩余容量是Android开发中常见且重要的任务。正确处理SD卡状态,合理使用`StatFs`类,以及遵循Android的权限管理规定,都是确保应用能正常访问和操作SD卡的关键。
在Android系统中,获取手机设备的存储路径是开发者经常需要进行的操作,这涉及到对设备内部存储和外部存储(如SD卡)的访问。本篇将详细介绍如何在Android应用中获取这两种存储路径,并讨论其兼容性问题。 首先,...
在Android系统中,开发者可以通过Java API来获取存储卡(外部存储)的剩余容量信息。这里主要涉及两个关键类:`Environment`和`StatFs`。`Environment`是Android提供的一个系统类,它提供了与文件系统相关的常量和...