在android中扫描不同的内存类型
我有一些问题可能对其他人也有用。 在android 4.0以后的版本中 1) 如何检查是否有外部sd卡支持 2) 如何强制运行Mediascan的内部和外部内存 3) 如何只扫描sd卡或内存?我建议您在developer.android.com上阅读 要检查外部内存是否可用(取自developer.android.com): 要读取内部文件,请使用在android中扫描不同的内存类型,android,android-sdcard,android-mediascanner,android-memory,Android,Android Sdcard,Android Mediascanner,Android Memory,我有一些问题可能对其他人也有用。 在android 4.0以后的版本中 1) 如何检查是否有外部sd卡支持 2) 如何强制运行Mediascan的内部和外部内存 3) 如何只扫描sd卡或内存?我建议您在developer.android.com上阅读 要检查外部内存是否可用(取自developer.android.com): 要读取内部文件,请使用context.fileList()查看更多 编辑 我不确定你想要2和3的什么。你可以使用mediascan来处理很多事情,但是仅仅为了使用它而使用它
context.fileList()代码>查看更多
编辑
我不确定你想要2和3的什么。你可以使用mediascan来处理很多事情,但是仅仅为了使用它而使用它听起来是徒劳的。为此,我推荐“奇点建议”。有一篇帖子。我建议你在developer.android.com上阅读
要检查外部内存是否可用(取自developer.android.com):
要读取内部文件,请使用context.fileList()代码>查看更多
编辑
我不确定你想要2和3的什么。你可以使用mediascan来处理很多事情,但是仅仅为了使用它而使用它听起来是徒劳的。为此,我推荐“奇点建议”。有一篇帖子。来自adb shell
运行mount
,全面了解设备上安装了什么存储。谢谢,但我的意思是,您可以从应用程序运行mount
,并获得结果字符串,请查看。您的编辑完全改变了问题。但是我试着给出了一个新的回答。从adb shell
运行mount
,全面了解设备上安装了什么存储。谢谢,但我的意思是你可以从应用程序运行mount
,并获得结果字符串,看看。你的编辑完全改变了这个问题。但我试着给出一个新的回答。
boolean mExternalStorageAvailable = false;
boolean mExternalStorageWriteable = false;
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
// We can read and write the media
mExternalStorageAvailable = mExternalStorageWriteable = true;
} else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
// We can only read the media
mExternalStorageAvailable = true;
mExternalStorageWriteable = false;
} else {
// Something else is wrong. It may be one of many other states, but all we need
// to know is we can neither read nor write
mExternalStorageAvailable = mExternalStorageWriteable = false;
}